MySQL表格中的点

时间:2013-08-30 21:08:07

标签: mysql

我有一个名为copra4server的SQL数据库,其中有一个名为db_version的表。 我输入:

USE copra4server;
SELECT version FROM db_version;

我得到ERROR 1146 (42S02): Table 'copra4server.db_version' doesn't exist

为什么要尝试获取名为 dbname.tablename 的表格,这个点符号是什么意思?

3 个答案:

答案 0 :(得分:0)

错误很明显。您的表db_version不在copra4server数据库中。

当您说USE copra4server;时,则表示您要使用copra4server数据库

当您从表格db_version中选择时,该表格不存在,从而导致错误。

答案 1 :(得分:0)

我认为你对“数据库”与“数据库服务器”有点混淆。

MySQL是一个数据库服务器。您可以连接到它并查看数据库。请注意这里的复数。一台服务器,许多数据库。

服务器上的一个数据库名为copra4server。当你说:

USE copra4server

您说的是“我当前的数据库现在是copra4server”。因此,您引用的任何表都将被假定为在该数据库中。您的查询:

SELECT version FROM db_version;

真的 - 引擎盖下 - 说

SELECT version FROM copra4server..db_version;

而且,该表不存在,导致错误消息。

顺便说一句,如果您正在寻找数据库版本,正确的语法是:

SELECT version()

答案 2 :(得分:0)

这就是MySQL引用表(db.table)的方式,所以很明显它正在讨论该数据库中的表。

如果您确定该表存在,请检查您的拼写。