例如,MySQL引用表名称使用

SELECT * FROM `table_name`;

请注意`

其他数据库是否使用不同的字符来引用其表名

推荐答案

这种引号的使用称为分隔标识符.它是SQL的重要部分,因为否则您不能使用标识符(例如表名和列名):

  • 包括空格:"My table"
  • 包括特殊字符和标点符号:"my-table"
  • 包括国际字符:"私のテーブル"
  • 区分大小写:"MyTable"
  • 匹配SQL关键字:"table"

标准SQL语言对分隔标识符使用双引号:

SELECT * FROM "my table";

默认情况下,MySQL使用反引号.MySQL可以使用标准双引号:

SELECT * FROM `my table`;
SET SQL_MODE=ANSI_QUOTES;
SELECT * FROM "my table";

默认情况下,Microsoft SQL Server和Sybase使用方括号.它们都可以这样使用标准双引号:

SELECT * FROM [my table];
SET QUOTED_IDENTIFIER ON;
SELECT * FROM "my table";

InterBase和Firebird需要将SQL方言设置为3以支持分隔标识符.

大多数其他品牌的数据库正确使用双引号.

Database相关问答推荐

无法连接MatrixOne(来自GitHub)

如何调试Anylogic SQL数据库TLS错误?

Pocketbase 中的 SQLite 数据库可以根据自己的喜好进行修改吗?

当某些 node 死亡时,mongo 副本集选举如何表现?

Mongodb聚合$group,限制数组长度

Ruby on Rails:before_save 字段为小写

在 PostgreSQL 触发函数中使用 pg_notify

两个不同数据库中的两个表之间的连接有什么问题?

MySQL JDBC Driver中cachePrepStmts和useServerPrepStmts有什么区别

不同的数据库是否使用不同的名称引用?

使用 jQuery 动态填写表单值

使用 java 查询 MySQL 数据库

EF4 代码优先导致 InvalidOperationException

将一行连接到另一个表中的多行

PostgreSQL 的示例数据库

将内存数据库保存到磁盘

MongoDB 是否支持浮点类型?

C# IEnumerator/yield struct 可能不好?

使用 PHP/MySQL 导入 CSV 数据

计算邮政编码...和用户之间的距离.