MySQL學習:
https://blog.csdn.net/2301_80220607/category_12971838.html?spm=1001.2014.3001.5482
前言:
在上一篇我們已經講解了數據庫的基本內容,相信大家對數據庫已經有了一些自己的理解,從這篇開始我們就開始正式進入如何操作數據庫相關內容的學習,首先我們先來學習一下庫的相關的操作
目錄
一、MySQL數據庫基礎概念
二、查看現有數據庫
三、創建數據庫
基本語法
常用選項說明
實際示例
四、字符集和校驗規則
系統默認字符集和校驗規則
查看字符集和校驗規則
校驗規則對數據庫的影響
五、修改數據庫
六、選擇/切換數據庫
七、刪除數據庫
基本語法
注意事項
實際示例
八、常見問題解答
九、總結
一、MySQL數據庫基礎概念
在MySQL中,數據庫(Database)是存儲有組織數據的容器,一個MySQL服務器可以管理多個數據庫,每個數據庫包含多個表(Table)、視圖(View)、存儲過程(Procedure)等對象。
另外想要了解底層的同學可以去了解一下mysql的主從復制原理,這個在大廠面試中經常出現
二、查看現有數據庫
在對庫進行操作之前,我們要先查看一下我們現在已經有哪些庫了,查看庫的語句為:
SHOW DATABASES;
(大小寫均可)
如圖,我這里就已經有了六個數據庫
之前我們在講操作系統的時候總喜歡提的一句話就是:在操作系統下,一切皆文件。
其實這里的數據庫在操作系統下同樣也是以文件的形式存在的,我們可以查看/var/lib/mysql這個路徑,在這個路徑中我們就可以看到我們的這幾個數據庫,而且是以文件夾的形式存在的
三、創建數據庫
基本語法
CREATE DATABASE [IF NOT EXISTS] 數據庫名
[CHARACTER SET 字符集名稱]
[COLLATE 校對規則];
常用選項說明
選項 | 說明 | 示例值 |
---|---|---|
IF NOT EXISTS | 避免重復創建時報錯 | IF NOT EXISTS |
CHARACTER SET | 指定字符集 | utf8mb4 |
COLLATE | 指定排序規則 | utf8mb4_general_ci |
注釋:[ ]中的內容屬于可選項,并不一定要加上
實際示例
創建簡單數據庫:
CREATE DATABASE my_shop;
出現這個就代表我們創建成功,此時我們查看庫或者查看特定路徑下是否存在文件夾都可以驗證這一點
創建帶字符集的數據庫(推薦使用utf8mb4以支持emoji表情):
CREATE DATABASE my_blog
CHARACTER SET utf8mb4
COLLATE utf8mb4_unicode_ci;
安全創建(避免重復):
CREATE DATABASE IF NOT EXISTS my_forum;
如圖,此時我們創建一個已經存在的數據庫的時候就會出現警告創建失敗
四、字符集和校驗規則
在上面創建數據庫中我們提到了字符集和校驗規則的概念,下面我們來講一下它對我們創建數據庫有什么影響
系統默認字符集和校驗規則
首先我們來看一下系統默認的字符集和校驗規則:
show variables like 'character_set_database';
show variables like 'collation_database';
以上兩種就是系統默認的字符集和校驗規則
查看字符集和校驗規則
首先我們先講一下字符集的作用:其實就是控制使用什么語言,比如這里我們系統默認的utf8就可以使用中文,校驗規則則需要與字符集保持一致
查看字符集:
show charset;
(節選部分)
查看校驗規則:
show collation;
也是有很多
校驗規則對數據庫的影響
我們可以通過校驗規則在創建數據庫時做一些有意思的操作,比如創建的數據庫是否區分大小寫等
創建一個區分大小寫的數據庫:
create database test2 collate utf8_bin;
創建一個不區分大小寫的數據庫:
create database test1 collate utf8_general_ci;
五、修改數據庫
對數據庫的修改操作主要是針對數據庫的字符集和校驗規則
ALTER DATABASE 數據庫名
CHARACTER SET 字符集名稱
COLLATE 校對規則;
示例:
ALTER DATABASE my_shop
CHARACTER SET utf8mb4
COLLATE utf8mb4_bin;
六、選擇/切換數據庫
要對特定數據庫進行操作,需要先選擇它:
USE 數據庫名;
示例:
USE my_shop;
查看當前選擇的數據庫:
SELECT DATABASE();
七、刪除數據庫
基本語法
DROP DATABASE [IF EXISTS] 數據庫名;
注意事項
-
數據不可恢復:刪除操作會永久刪除數據庫及其所有內容
-
權限要求:需要DROP權限
-
推薦做法:先備份再刪除
實際示例
-
基本刪除:
DROP DATABASE old_database;
-
安全刪除(避免不存在的數據庫報錯):
DROP DATABASE IF EXISTS temp_database;
八、常見問題解答
Q:創建數據庫時報錯"Can't create database"怎么辦?
A:檢查:
是否有CREATE權限
數據庫名是否合法
磁盤空間是否充足
Q:如何查看數據庫的創建語句?
SHOW CREATE DATABASE 數據庫名;
Q:為什么推薦使用utf8mb4而不是utf8?
A:MySQL的utf8只支持最多3字節字符,而utf8mb4支持完整的4字節UTF-8編碼(如emoji表情)。
九、總結
掌握MySQL數據庫的基本操作是數據庫管理的第一步。記住:
創建前規劃好字符集和命名
刪除前務必備份重要數據
定期維護數據庫結構
以上就是本篇關于數據庫各種操作的講解了
感謝各位大佬觀看,創作不易,還望各位大佬點贊支持!!!