T-SQL escape quote character

2020-02-06 18:53发布

问题:

NOTE: It's probably a duplicate but I can't find working answer.

Following is what i'm trying todo, notice a ' in the value. How do I fix this?

INSERT INTO [pugraider].[dbo].[Realms]([Name]) VALUES('Aman'Thul')

I use MS SQL Server Management Studio 2008.

EDIT: I'm writing a script to populate a lookup table (ID<->Name).

回答1:

This will work:-

INSERT INTO [pugraider].[dbo].[Realms]([Name]) VALUES('Aman''Thul')

Ordinarily the only reason to have such hardcoded values in T-SQL is in DB construction code such as initialising look up tables.

Otherwise this code might be a result of string concatenation to build up some T-SQL from some input source. If that is the case its worth finding ways to avoid it since it can open your application to SQL injection attacks.



标签: tsql escaping