【问题标题】:How to include space between the table name in command line for MySql?如何在 MySql 的命令行中的表名之间包含空格?
【发布时间】:2017-08-27 16:54:19
【问题描述】:

我已经安装了xampp 并使用phpMyAdmin 创建了一个名为'student name' 的表,我没有按照惯例包含下划线。

现在,我正在尝试通过命令提示符访问它,当我输入以下查询时-

SELECT * FROM test.student name;

上面写着-

test.student 不存在。

我尝试在 hit and trial 下划线,但没有奏效。 我查看了 phpMyadmin 并尝试从那里运行查询以查看它是如何调用表名的但我看到它确实将 `` 放在了所有内容中 例如

SELECT * FROM `学生姓名`;

尝试做同样的事情,但它在命令提示符下不起作用。

那该怎么做呢?

【问题讨论】:

  • 使用双引号"student name"
  • 不要再这样做了,永远不要在标识符中使用空格。正如你自己所说,使用约定。
  • @JorgeCampos 这是命令提示符的规则还是mysql的规则?我假设命令提示符的?
  • 这只是一个约定,让每个阅读和使用您的代码的人都更容易。这不是一个规则,这就是双引号的原因。回到过去,只有数据库和客户端存在,您使用它来命名和创建格式良好的报告,而现在您可以让它在应用层工作。
  • 用反引号引用表名,而不是单引号或双引号。此外,切勿在表名或列名中使用空格。永远,永远!

标签: mysql command-line command-prompt


【解决方案1】:

好像我犯了语法错误。将表名加上反引号(`)可以解决问题。

尽管在 cmets 中指出,标识符(例如表名)之间永远不应有空格。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-05
    • 2021-07-26
    • 1970-01-01
    • 2014-03-06
    • 2017-01-13
    • 2014-05-26
    • 2015-10-09
    • 1970-01-01
    相关资源
    最近更新 更多