DDL與DML的區別
阿新 • • 發佈:2018-11-22
DDL (Data Definition Language 資料定義語言)
資料定義語言,用於定義和管理 SQL 資料庫中的所有物件的語言
1 2 3 4 5 6 |
|
當執行DDL語句時,在每一條語句前後,oracle都將提交當前的事務。
如果使用者使用insert命令將記錄插入到資料庫後,執行了一條DDL語句(如create table),此時來自insert命令的資料將被提交到資料庫。
當DDL語句執行完成時,DDL語句會被自動提交,不能回滾。
DML (Data Manipulation Language 資料操作語言)
1 2 3 |
|
當執行DML命令如果沒有提交,將不會被其他會話看到。
除非在DML命令之後執行了DDL命令或DCL命令,或使用者退出會話,或終止例項,此時系統會自動發出commit命令,使未提交的DML命令提交。
總結下二者區別:
DML是SELECT、UPDATE、INSERT、DELETE,就象它的名字一樣,這4條命令是用來對資料庫裡的資料進行操作的語言。
DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定義或改變表(TABLE)的結構,資料型別,表之間的連結和約束等初始化工作上,他們大多在建立表時使用。