我的问题可能很愚蠢。
我有一个不喜欢单引号的应用程序。 我想从该应用程序执行SQL查询。 当我形成我的SQL查询时,我不能使用单引号。 我正在寻找单引号的替代方法。 我在MicroSoft SQL 2012上。
示例,我的SQL就是这样,
SELECT name
FROM People
WHERE peopleId = '123'
但是我想写这个没有单引号, 我正在尝试下面的东西,
SELECT name
FROM People
WHERE peopleId = CHAR(39)123CHAR(39)
谢谢
答案 0 :(得分:1)
如果它接受双引号......
SET QUOTED_IDENTIFIER ON
GO
https://msdn.microsoft.com/en-us/library/ms174393.aspx
当SET QUOTED_IDENTIFIER
为ON
时,标识符可以用双引号分隔,文字必须用单引号分隔。当SET QUOTED_IDENTIFIER为OFF时,不能引用标识符,并且必须遵循标识符的所有Transact-SQL规则。有关更多信息,请参阅数据库标识符。文字可以用单引号或双引号分隔。
答案 1 :(得分:1)
如果您的PeopleID或过滤器值最初是数值,则可以执行此操作。如果它不是数字我不知道。
SELECT name
FROM People
WHERE peopleId = CAST(123 AS VARCHAR(25))