2013-08-30 25 views
0

我有一個名爲copra4server的SQL數據庫,其中有一個名爲db_version的表。 我進入:表名中的MySQL點

USE copra4server; 
SELECT version FROM db_version; 

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

爲什麼試圖讓一個名爲dbname.tablename和是什麼點符號的意思是桌子嗎?

+1

什麼是不清楚的錯誤?該表不存在於您正在使用的數據庫中。 –

+2

顯示的格式是'[database]。[table]'。名爲'copra4server'的數據庫中存在哪些表? – showdev

+0

你的'show tables'列表中有'db_version'嗎? – Grzegorz

回答

0

錯誤非常明顯。您的表db_version不存在於copra4server數據庫中。

當你說USE copra4server;那麼就意味着你要使用你的copra4server數據庫

而當你從表中db_version選擇表不存在,因此導致錯誤。

0

我認爲你對「數據庫」和「數據庫服務器」有點混淆。

MySQL是一個數據庫服務器。您可以連接到它並查看數據庫。注意這裏的複數。一臺服務器,許多數據庫。

服務器上的其中一個數據庫叫做copra4server。當你說:

USE copra4server 

你在說「我目前的數據庫現在是copra4server」。所以,你所引用的任何表格都將假定在該數據庫中。您的疑問:

SELECT version FROM db_version; 

是真的 - 引擎蓋下 - 他說

SELECT version FROM copra4server..db_version; 

而且,該表不存在,導致該錯誤消息。

順便說一句,如果你正在尋找數據庫版本,正確的語法是:

SELECT version() 
0

這是MySQL的如何是表(db.table),所以很顯然,它正在關於該數據庫中的表格。

如果您確定表格存在,請檢查拼寫。