为什么 MySQL 在表名中使用破折号时会出错?

Barbara Streisand
发布: 2024-11-11 14:41:02
原创
399 人浏览过

Why does MySQL give an error when using dashes in table names?

在 MySQL 表名中使用破折号

如果遇到类似“错误号:1064...检查手册...”的错误在第 1 行的“-01-000001”附近,”在备份数据库时,这可能是由于表名称中的破折号 (-) 造成的。 MySQL 不允许在表名称中出现破折号而不进行特殊处理。

要解决此问题:

  1. 将表名称放在反引号中: 将表名称括起来带反引号 (`),充当转义字符。例如:
SELECT * FROM `temp_01-01-000001`
登录后复制

通过将表名括在反引号中,破折号就失去了其特殊含义,MySQL 将表名视为字符串。

  1. 使用 SQL 标识符引用: 或者,您可以使用 SQL 标识符引用将整个表名视为单引号字符串。这是通过在表名称周围添加双引号 ("") 来实现的,如下所示:
SELECT * FROM "temp_01-01-000001"
登录后复制

这两种方法都允许您查询名称中包含破折号的表。请记住在引用表格时包含反引号或双引号,否则您仍然可能会遇到错误。

以上是为什么 MySQL 在表名中使用破折号时会出错?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板