例如,使用
的mysql引用表名SELECT * FROM `table_name`;
注意`
其他数据库是否使用不同的char来引用其表名
答案 0 :(得分:32)
这种引号的使用称为分隔标识符。它是SQL的重要组成部分,因为否则您不能使用以下标识符(例如表名和列名):
标准SQL语言使用双引号作为分隔标识符:
SELECT * FROM "my table";
MySQL默认使用反引号。 MySQL可以使用标准的双引号:
SELECT * FROM `my table`;
SET GLOBAL SQL_MODE=ANSI_QUOTES;
SELECT * FROM "my table";
Microsoft SQL Server默认使用括号。 Microsoft可以使用标准双引号:
SELECT * FROM [my table];
SET QUOTED_IDENTIFIER ON;
SELECT * FROM "my table";
InterBase和Firebird需要将SQL方言设置为3以支持分隔标识符。
大多数其他品牌的数据库都正确使用双引号。
答案 1 :(得分:2)
当QUOTED_IDENTIFIER选项为ON时,SQL Server使用[方括号]或“双引号”。
我认为双引号符合SQL-92标准。
答案 2 :(得分:2)
简洁,是的。
SQL标准在名称周围使用双引号来表示“分隔标识符”。
默认情况下,Informix可互换使用单引号和双引号来表示字符串。但是,通过设置环境变量DELIMIDENT,您可以打开SQL标准行为 - 围绕字符串的单引号和围绕分隔标识符的双引号。
其他人列出了其他DBMS的其他行为;我不需要重复这些。