我有一個名爲copra4server的SQL數據庫,其中有一個名爲db_version的表。 我進入:表名中的MySQL點
USE copra4server;
SELECT version FROM db_version;
我也得到ERROR 1146 (42S02): Table 'copra4server.db_version' doesn't exist
爲什麼試圖讓一個名爲dbname.tablename和是什麼點符號的意思是桌子嗎?
我有一個名爲copra4server的SQL數據庫,其中有一個名爲db_version的表。 我進入:表名中的MySQL點
USE copra4server;
SELECT version FROM db_version;
我也得到ERROR 1146 (42S02): Table 'copra4server.db_version' doesn't exist
爲什麼試圖讓一個名爲dbname.tablename和是什麼點符號的意思是桌子嗎?
錯誤非常明顯。您的表db_version
不存在於copra4server
數據庫中。
當你說USE copra4server;
那麼就意味着你要使用你的copra4server
數據庫
而當你從表中db_version
選擇表不存在,因此導致錯誤。
我認爲你對「數據庫」和「數據庫服務器」有點混淆。
MySQL是一個數據庫服務器。您可以連接到它並查看數據庫。注意這裏的複數。一臺服務器,許多數據庫。
服務器上的其中一個數據庫叫做copra4server
。當你說:
USE copra4server
你在說「我目前的數據庫現在是copra4server
」。所以,你所引用的任何表格都將假定在該數據庫中。您的疑問:
SELECT version FROM db_version;
是真的 - 引擎蓋下 - 他說
SELECT version FROM copra4server..db_version;
而且,該表不存在,導致該錯誤消息。
順便說一句,如果你正在尋找數據庫版本,正確的語法是:
SELECT version()
這是MySQL的如何是表(db.table),所以很顯然,它正在關於該數據庫中的表格。
如果您確定表格存在,請檢查拼寫。
什麼是不清楚的錯誤?該表不存在於您正在使用的數據庫中。 –
顯示的格式是'[database]。[table]'。名爲'copra4server'的數據庫中存在哪些表? – showdev
你的'show tables'列表中有'db_version'嗎? – Grzegorz