SQL 中何时何地使用单引号? [复制]

Posted

技术标签:

【中文标题】SQL 中何时何地使用单引号? [复制]【英文标题】:When and where Single quotes are used in SQL? [duplicate] 【发布时间】:2018-12-09 10:35:19 【问题描述】:

在 SQL 中何时何地使用单引号?

【问题讨论】:

***.com/questions/11321491/… 上的第一条评论可能会回答您的问题。 单引号是字符串和日期常量的标准分隔符。那就是应该使用它们的地方。 【参考方案1】:

我的回答仅与 SQL Server 有关。

据我所知 - 2 个地方

    用于在 SQL 中指示字符串的开始和结束。如,定义数据类型的值,如 varchar、nvarchar、char、 uniqueIdentifier、时间戳、日期时间、日期等。 用于列别名。 (也是一种只写字符串的类型,如第 1 点所述) 在创建动态查询时对保留字符 ['] 本身进行转义。

例如-

declare @name nvarchar(50)= 'ABC BCD CDE'
declare @query nvarchar(100)
set @query = 'select replace('''+@name+''', '' '', '''') as ''ColumnName'''
select @query
exec sp_executesql @query

【讨论】:

一些 DBMS 可能接受单引号来分隔别名,而另一些则不会。一般来说,双引号是分隔别名的更好选择,除非 DBMS 有自己的名称分隔符,例如mysql 有反引号,SQLServer 有方括号... 哦,我只回答了与 SQL Server 相关的问题。是的,你是对的。

以上是关于SQL 中何时何地使用单引号? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

何时在 MySQL 中使用单引号、双引号和反引号

何时在 MySQL 中使用单引号、双引号和反引号

SQL中单引号和双引号有啥用? [复制]

何时在 MySQL 中使用单引号、双引号和反引号

何时使用三重单引号而不是三重双引号

sql语句引号用法 数据库中引号的用法