SQL是操作關(guān)系數(shù)據(jù)庫非常重要的一門編程語言
網(wǎng)站設(shè)計制作過程拒絕使用模板建站;使用PHP+MYSQL原生開發(fā)可交付網(wǎng)站源代碼;符合網(wǎng)站優(yōu)化排名的后臺管理系統(tǒng);成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)收費合理;免費進行網(wǎng)站備案等企業(yè)網(wǎng)站建設(shè)一條龍服務(wù).我們是一家持續(xù)穩(wěn)定運營了10余年的成都創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)公司。
structure query language既然是語言自然可以編程,SQL的分類可依據(jù)操作對象的不同分為DDL,DML,DCL。
我們操作數(shù)據(jù)庫如創(chuàng)建,添加,更新,刪除操作,如操作表等都是屬于定義范圍。
所以DDL則是SQL定義語言。
我們要用數(shù)據(jù)庫來存儲數(shù)據(jù),自然是先有庫,再有表,然后再數(shù)據(jù),所以我們要先定義庫,定義表。
1、創(chuàng)建數(shù)據(jù)庫
create database db_name [數(shù)據(jù)庫選項] 一般情況下選項可以不填寫
如我們創(chuàng)建一個學生庫:
create database student;
PS:創(chuàng)建數(shù)據(jù)庫時,數(shù)據(jù)庫名的命令規(guī)則要遵循如下規(guī)則:
A、命令應(yīng)該遵循標識符的規(guī)則 即字母,數(shù)字,下劃線組成
B、數(shù)據(jù)庫名不得使用系統(tǒng)內(nèi)置的關(guān)鍵字或是特殊符號
C、如果使用特殊符號或是中文符號時要加上反引號‘`’。
如創(chuàng)建一個中文的數(shù)據(jù)庫:
create database `學生庫`;
那么我們創(chuàng)建數(shù)據(jù)庫時,會自動在data目錄下生成一個目錄且以數(shù)據(jù)庫名命名的目錄同時還有一個.opt的文件,該文件是數(shù)據(jù)庫的選項文件,存儲的是數(shù)據(jù)庫的選項信息。如果我們在創(chuàng)建數(shù)據(jù)庫時沒有寫上庫的選項就是默認的選項。
我們注意到,如果說我們創(chuàng)建數(shù)據(jù)庫時使用的是特殊符號,那么在創(chuàng)建目錄時則是使用其它編碼的字符并非亂碼,我們查看數(shù)據(jù)庫結(jié)果如下:
所以請大家不要誤認為這是亂碼,這是一種錯誤的認識哦。當然們建議創(chuàng)建數(shù)據(jù)庫盡量遵循標識符的規(guī)則來命名比較好。
我們在定義數(shù)據(jù)庫時沒有指定相應(yīng)的庫選項,其實是庫的字符編碼以及字符的校對規(guī)則,接下來我們使用一下怎么定義他:
create database `teacher` character set utf8;
我們打開數(shù)據(jù)庫的選項文件顯示如下:
接下來我們查看數(shù)據(jù)庫服務(wù)器里有哪些數(shù)據(jù)庫
查詢指令:show databases;
查看數(shù)據(jù)庫的創(chuàng)建信息:show create database db_name;
這兩個查詢指令非常簡單,show databases是查詢有哪些數(shù)據(jù)庫,而show create database db_name則是查看數(shù)據(jù)庫的創(chuàng)建信息。
數(shù)據(jù)庫創(chuàng)建好了,我們有時候不想要了那么就會刪除數(shù)據(jù)庫
刪除指令:drop database db_name
或是:drop database if exists db_name
第二條指令則是刪除時檢測庫是否存在,如存在則刪除,不存在刪除時也不會報錯。
修改數(shù)據(jù)庫:
可以修改庫的庫選項如字符編碼
alter database db_name character set gbk;
那么數(shù)據(jù)庫名怎么修改呢?在早期的數(shù)據(jù)庫版本是支持rename重命令這個指令的,但現(xiàn)在的版本沒有支持了,如果說我們要更新數(shù)據(jù)庫名的話有以下兩個方案解決:
1、一是直接更新data目錄下的數(shù)據(jù)庫目錄名稱
2、創(chuàng)建一個新的數(shù)據(jù)庫,然后將當前庫的表復制到新庫里,再將其刪除。就完成了數(shù)據(jù)名的更新操作了。
以上是數(shù)據(jù)庫的創(chuàng)建,刪除,查看,更新的操作。
補充一點我們的數(shù)據(jù)庫服務(wù)器里如果有許多數(shù)據(jù)庫時,再檢索時也可以這樣做:
show databases like '%xx' 其中%相當于任意字符,以XX結(jié)尾的字符串名
關(guān)于數(shù)據(jù)表的操作及后面的知識點會依據(jù)時間情況來寫。歡迎各路朋友指教。