【问题标题】:Single and double quotes in SQL ServerSQL Server 中的单引号和双引号
【发布时间】:2015-12-08 04:55:26
【问题描述】:

我想知道使用引号引起此错误的确切原因。

INSERT INTO table_check(name) VALUES('hello'hi') -- ERROR
INSERT INTO table_check(name) VALUES('hello''hi') -- RESULT:- hello'hi
INSERT INTO table_check(name) VALUES('hello'''hi') --ERROR
INSERT INTO table_check(name) VALUES('hello''''hi') --RESULT:- hello''hi
INSERT INTO table_check(name) VALUES('hello'''''hi') --ERROR
INSERT INTO table_check(name) VALUES('hello''''''hi') --RESULT:- hello'''hi

【问题讨论】:

  • 简单的答案是单引号的数量应该是偶数,否则会有未闭合的引号

标签: sql sql-server sql-server-2008


【解决方案1】:

单引号通过加倍来转义。因此,只要存在偶数个引号,我们就会得到结果。

要了解单引号的行为,请尝试在下面的代码中运行:

Select '','''','''''','''''''',''''''''''

所以,单引号应该是偶数否则我们会得到类似的错误:未闭合的引号在字符串'之后标记)--错误

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-24
    • 2023-03-25
    • 2019-07-20
    • 1970-01-01
    • 1970-01-01
    • 2013-02-16
    • 2011-05-08
    • 1970-01-01
    相关资源
    最近更新 更多