mysql數據庫的基本操作:創建數據庫、查看數據庫、修改數據庫、刪除數據庫
阿新 • • 發佈:2018-02-13
bbs nor nlb res tco ipc sep tmg atop
本節相關:
本節相關:
創建數據庫,查看數據庫,修改數據庫,刪除數據庫
首發時間:2018-02-13 20:47
創建數據庫 :
語法 :
create database 數據庫名字[庫選項];
庫選項說明 :
- 庫選項是可選項,可以不寫
- 庫選項有兩項:字符集和校對集。
- 庫選項的字符集是數據庫識別或存儲數據使用的字符集。常用字符集有utf8和gbk;
- 庫選項的校對集是數據庫校對數據時使用的校對集【校對數據時依據校對集的規則來校對,比如有些校對集忽略大小寫】。
但凡是創建數據庫時不指定庫選項的,都將使用默認指定的庫選項。
補充:
- 查看默認校對集
show variabls like‘character%‘
- 查看默認校對集:
show variables like ‘collation_%‘;
使用示例 :
create database shool_info; create database mydatabase charset utf8; create database fordelete charset gbk;
補充說明 :
- 數據庫名字不能使用關鍵字或保留字,如database,delete,如果語法無誤但創建失敗時,那麽很可能是使用了關鍵字或保留字。如果非要使用關鍵字或保留字,需要使用`(TAB上面的鍵)包裹數據庫名字,但刪除的時候也需要加`。
- 數據庫名字是中文而無法創建問題:
- 問題的發生是因為客戶端跟服務端的字符集匹配問題,比如說服務端認為客戶端來的UTF8(漢字三個字節),而客戶端的字符集是gbk(漢字兩個字節)。解決辦法是使服務端接受字符的字符集與客戶端使用的字符集相同。
- 另外一個問題是服務端接收中文後傳輸給客戶端顯示問題,這需要使服務端傳輸給客戶端時使用的字符集與客戶端的相同【客戶端是gbk,而服務端傳的是utf8的中文,那麽客戶端會顯示錯誤】。
- 修改辦法1:set names 客戶端使用的字符集;【執行set names utf8 就是把character_set_client、character_set_connection、character_set_results這3個參數值都設為utf8
- 修改辦法2:逐一設置client、result的字符集。
- 修改辦法1:set names 客戶端使用的字符集;【執行set names utf8 就是把character_set_client、character_set_connection、character_set_results這3個參數值都設為utf8
補充說明:
幾個character_set的意義:
- client--服務端認為客戶端使用的字符集
- connection--連接使用的編碼,用於mysql內部【占位清楚使用意義,如果未來弄明白再補充】
- database--當前數據庫使用的字符集
- filesystem--文件系統
- results --服務端發送給客戶端的結果的字符集
- server -- 服務端使用的字符集,如果創建數據庫時沒有指定字符集,那麽會使用服務端當前使用的字符集
- system--數據庫系統
- dir--字符集存儲的目錄
查看數據庫 :
數據庫的查看可以查看現有的數據庫,也可以查看數據庫的創建語句。
語法:
-- 查看所有數據庫 show databases; -- 查看指定部分的數據庫 show databases like ‘模糊匹配‘; -- 查看數據庫的創建語句; show create database 數據庫名;
通配符【通配符可以用來模糊匹配字符】:
show database like ‘模糊匹配’中:
%代表匹配多個任意字符,
_代表匹配單個任意字符
如果_或者%也是一個包含在數據庫名字中的字符的話,需要使用轉義字符\,不然會認定_和%是通配符
如查找database_student, 需使用database\_%;,不然可能查找出databasedemo之類不帶database_的數據庫。
使用示例:
show database; show database like ‘my%‘; show database like ‘my_‘; show create database mydatabase;
修改數據庫 :
數據庫的修改可以修改數據庫的庫選項(字符集和校對集)
語法:
Alter database 數據庫名字 [庫選項];
使用示例:
-- 修改數據庫的字符集 Alter database mydatabase charset gbk; Alter database mydatabase character set gbk; Alter database mydatabase character set = gbk; -- 修改數據庫的校對集 Alter database mydatabase collate utf8_bin;
補充說明:
校對集依賴於字符集,一般單獨修改字符集時校對集也會更改,單獨修改校對集字符集也會更改。
如果更改的校對集依賴的字符集相同,不改變字符集。
刪除數據庫 :
語法:
drop database 數據庫名字;
使用示例:
-- 刪除數據庫 what drop database what;
補充說明:
mysql數據庫的基本操作:創建數據庫、查看數據庫、修改數據庫、刪除數據庫