2017-04-22 33 views
0

我想在MySQL服務器MySQL的「沒有數據庫選擇」,全名

DELETE FROM MY_DB.MY_TABLE; 

執行查詢,但我得到一個錯誤的inspite「沒有數據庫選擇」。爲什麼我應該在給出完整名稱時明確選擇數據庫,包括數據庫?

+1

你可以開玩笑地選擇它'USE MY_DB; DELETE FROM MY_TABLE;' –

+0

該查詢適用於我。您需要添加有關您的環境的信息。 –

回答

3

假設你正試圖從命令行執行查詢,你可以嘗試:

use MY_DB; 

它將使用MY_DB作爲默認的數據庫。 Here's使用命令的文檔。它表示以下內容:

USE db_name語句告訴MySQL使用db_name數據庫作爲默認(當前)數據庫作爲後續語句的數據庫 。數據庫 保持默認狀態,直到會話結束或另一個USE 聲明發布。

更新

如果use命令失敗,那麼則可能是用戶不訪問MY_DB,在這種情況下,您可以授予使用MySQL的GRANT語法(文檔here)的訪問。如果您在查詢本身中指定數據庫,則不需要明確指定use

+0

這是怎麼回答:「爲什麼我應該明確選擇一個數據庫?」? –

+0

@PaulSpiegel更新了答案。 –

+0

這似乎是一個特權問題。一旦我重新開始我的會話它的工作! – Kannan