0. 說明
今天遇到一個同學分不清楚SQL所屬的分類,所以我才總結下SQL語句的分類,其實基本上教科書上都會有這個。
SQL語言共分為四大類:數據查詢語言DQL,數據操縱語言DML,數據定義語言DDL,數據控制語言DCL。
SQL語句分類簡圖
1. 數據查詢語言DQL
數據查詢語言DQL基本結構是由SELECT子句,FROM子句,WHERE
子句組成的查詢塊:
SELECT <字段名表> FROM <表或視圖名> WHERE <查詢條件>
2 .數據操縱語言DML
數據操縱語言DML主要有三種形式:
- 插入:INSERT
- 更新:UPDATE
- 刪除:DELETE
3. 數據定義語言DDL
數據定義語言DDL用來創建數據庫中的各種對象-----表、視圖、
索引、同義詞、聚簇等如:
CREATE TABLE(表)/VIEW(視圖)/INDEX(索引)/SYN(同義詞)/CLUSTER(簇)
DDL操作是隱性提交的!不能rollback。
4. 數據控制語言DCL
數據控制語言DCL用來授予或回收訪問數據庫的某種特權,并控制。
數據庫操縱事務發生的時間及效果,對數據庫實行監視等。如:
- - GRANT:授權。
- - ROLLBACK [WORK] TO [SAVEPOINT]:回退到某一點。
回滾---ROLLBACK
回滾命令使數據庫狀態回到上次最后提交的狀態。其格式為:
SQL>ROLLBACK;
- - COMMIT [WORK]:提交。
在數據庫的插入、刪除和修改操作時,只有當事務在提交到數據庫時才算完成。在事務提交前,只有操作數據庫的這個人才能有權看到所做的事情,別人只有在最后提交完成后才可以看到。
提交數據有三種類型:顯式提交、隱式提交及自動提交。下面分別說明這三種類型。
- - 顯式提交
用COMMIT命令直接完成的提交為顯式提交。其格式為:
SQL>COMMIT;
- - 隱式提交
用SQL命令間接完成的提交為隱式提交。這些命令是:
ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。
- - 自動提交
若把AUTOCOMMIT設置為ON,則在插入、修改、刪除語句執行后,系統將自動進行提交,這就是自動提交。其格式為:
SQL>SET AUTOCOMMIT ON;
5. 總結
本文只是介紹SQL語句按照功能分類的概念,其實大部分用到的是DQL和DML,偶爾會用到DDL,一般的開發人員很少會用到DCL。希望本文對你學習SQL有幫助。
求評論、點贊、關注+轉發。
限于筆者知識有限,如果不足之處請幫忙指正,不喜勿噴!
您的支持是我不懈努力的動力,請讀者多支持下!
更多文章,請關注微信公眾號 CS_Toper之路,或者頭條號 CSToper。






