何时在 SQL 语句中使用单引号?
When to use single quotes in an SQL statement?
我知道我在处理 TEXT 类型的数据时应该使用它(我猜是那些回落到 TEXT 的数据),但这是唯一的情况吗?
示例:
UPDATE names SET name='Mike' WHERE id=3
我正在用 C++ 编写 SQL 查询自动生成,所以我想确保在必须添加引号时不会遗漏大小写。
单引号 ('
) 表示文本数据,如您所指出的(例如,'Mike'
在您的示例中)。数值数据(例如,您示例中的 3
)、对象(table、列等)名称和句法元素(例如,update
、set
、where
) 不应包含在引号中。
单引号是字符串的分隔符。它让解析器知道字符串从哪里开始,在哪里结束,以及它是一个字符串。您会发现有时您也可以使用双引号。
确保您不会遗漏任何情况的唯一方法是对输入进行转义,否则当单引号以某种方式出现在文本中时,这很容易被滥用。
我知道我在处理 TEXT 类型的数据时应该使用它(我猜是那些回落到 TEXT 的数据),但这是唯一的情况吗?
示例:
UPDATE names SET name='Mike' WHERE id=3
我正在用 C++ 编写 SQL 查询自动生成,所以我想确保在必须添加引号时不会遗漏大小写。
单引号 ('
) 表示文本数据,如您所指出的(例如,'Mike'
在您的示例中)。数值数据(例如,您示例中的 3
)、对象(table、列等)名称和句法元素(例如,update
、set
、where
) 不应包含在引号中。
单引号是字符串的分隔符。它让解析器知道字符串从哪里开始,在哪里结束,以及它是一个字符串。您会发现有时您也可以使用双引号。
确保您不会遗漏任何情况的唯一方法是对输入进行转义,否则当单引号以某种方式出现在文本中时,这很容易被滥用。