在本教程中,您將學(xué)習(xí)如何在MySQL中管理數(shù)據(jù)庫。例如,學(xué)習(xí)如何創(chuàng)建新的數(shù)據(jù)庫,刪除現(xiàn)有數(shù)據(jù)庫以及顯示MySQL數(shù)據(jù)庫服務(wù)器中的所有數(shù)據(jù)庫。
下面讓我們演示如何在MySQL中創(chuàng)建一個(gè)新的數(shù)據(jù)庫。
在與數(shù)據(jù)進(jìn)行任何其他操作之前,需要?jiǎng)?chuàng)建一個(gè)數(shù)據(jù)庫。數(shù)據(jù)庫是數(shù)據(jù)的容器。它可以用于存儲(chǔ)聯(lián)系人,供應(yīng)商,客戶或任何想存儲(chǔ)的數(shù)據(jù)。 在MySQL中,數(shù)據(jù)庫是用于存儲(chǔ)和操作諸如表,數(shù)據(jù)庫視圖,觸發(fā)器,存儲(chǔ)過程等數(shù)據(jù)的對(duì)象的集合。
要在MySQL中創(chuàng)建數(shù)據(jù)庫,請(qǐng)使用CREATE DATABASE語句,如下:
CREATE DATABASE [IF NOT EXISTS] database_name;
我們來更詳細(xì)地看看CREATE DATABASE語句:
CREATE DATABASE語句的后面是要?jiǎng)?chuàng)建的數(shù)據(jù)庫名稱。建議數(shù)據(jù)庫名稱盡可能是有意義和具有一定的描述性。IF NOT EXISTS是語句的可選子句。 IF NOT EXISTS子句可防止創(chuàng)建數(shù)據(jù)庫服務(wù)器中已存在的新數(shù)據(jù)庫的錯(cuò)誤。不能在MySQL數(shù)據(jù)庫服務(wù)器中具有相同名稱的數(shù)據(jù)庫。例如,要?jiǎng)?chuàng)建一個(gè)名稱為mytestdb數(shù)據(jù)庫,可以執(zhí)行CREATE DATABASE語句后接數(shù)據(jù)庫名稱:mytestdb,如果當(dāng)前MySQL服務(wù)器中沒有數(shù)據(jù)庫:mytestdb,則創(chuàng)建成功,如下所示:
CREATE DATABASE IF NOT EXISTS mytestdb;
執(zhí)行此語句后,MySQL返回一條消息,通知新數(shù)據(jù)庫是否已成功創(chuàng)建。
顯示數(shù)據(jù)庫
SHOW DATABASES語句顯示MySQL數(shù)據(jù)庫服務(wù)器中的所有數(shù)據(jù)庫。您可以使用SHOW DATABASES語句來查看您要?jiǎng)?chuàng)建的數(shù)據(jù)庫,或者在創(chuàng)建新數(shù)據(jù)庫之前查看數(shù)據(jù)庫服務(wù)器上的所有數(shù)據(jù)庫,例如:
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| testdb |
| yiibaidb |
+--------------------+
5 rows in set
在此MySQL數(shù)據(jù)庫服務(wù)器中有6個(gè)數(shù)據(jù)庫。 information_schema,performance_schema和mysql是我們安裝MySQL時(shí)可用的默認(rèn)數(shù)據(jù)庫,而yiibaidb是創(chuàng)建的新數(shù)據(jù)庫。
選擇要使用的數(shù)據(jù)庫
在使用指定數(shù)據(jù)庫之前,必須通過使用USE語句告訴MySQL要使用哪個(gè)數(shù)據(jù)庫。
USE database_name;
您可以使用USE語句選擇示例數(shù)據(jù)庫(yiibaidb),如下所示:
USE yiibaidb;
從現(xiàn)在開始,所有操作(如查詢數(shù)據(jù),創(chuàng)建新表或調(diào)用存儲(chǔ)過程)都將對(duì)當(dāng)前數(shù)據(jù)庫(即yiibaidb)產(chǎn)生影響。
刪除數(shù)據(jù)庫意味著數(shù)據(jù)庫中的所有數(shù)據(jù)和關(guān)聯(lián)對(duì)象將被永久刪除,并且無法撤消。 因此,用額外的注意事項(xiàng)執(zhí)行此查詢是非常重要的。
要?jiǎng)h除數(shù)據(jù)庫,請(qǐng)使用DROP DATABASE語句,如下所示:
DROP DATABASE [IF EXISTS] database_name;
遵循DROP DATABASE是要?jiǎng)h除的數(shù)據(jù)庫名稱。 與CREATE DATABASE語句類似,IF EXISTS是該語句的可選部分,以防止您刪除數(shù)據(jù)庫服務(wù)器中不存在的數(shù)據(jù)庫。
如果要使用DROP DATABASE語句練習(xí),可以創(chuàng)建一個(gè)新數(shù)據(jù)庫,然后將其刪除。來看下面的查詢:
CREATE DATABASE IF NOT EXISTS tempdb;
SHOW DATABASES;
DROP DATABASE IF EXISTS tempdb;
三個(gè)語句的說明如下:
CREATE DATABASE語句創(chuàng)建了一個(gè)名為tempdb的數(shù)據(jù)庫。SHOW DATABASES語句顯示所有數(shù)據(jù)庫。DROP DATABASE語句刪除了名為tempdb的數(shù)據(jù)庫。在本教程中,您學(xué)習(xí)了各種語句來管理MySQL中的數(shù)據(jù)庫,包括創(chuàng)建新數(shù)據(jù)庫,刪除現(xiàn)有數(shù)據(jù)庫,選擇要使用的數(shù)據(jù)庫,以及在MySQL數(shù)據(jù)庫服務(wù)器中顯示所有數(shù)據(jù)庫。