首頁  >  文章  >  資料庫  >  關於概念DDL、DML、DCL、TCL詳細解釋

關於概念DDL、DML、DCL、TCL詳細解釋

一个新手
一个新手原創
2017-09-09 14:49:532796瀏覽

       身為經驗豐富的開發人員,對於DDL、DML、DCL、TCL這些縮寫詞(名詞)或許不會陌生,但是作為億i個程式開發的新手可能就會有很多迷惑,接下來就給大家詳細解釋下,希望對讀者有一定的幫助。

1、資料定義語言DDL
DDL((Data Definition Language):主要的命令有CREATE、ALTER、DROP等,用於定義/修改/刪除資料對象(如表)的資料結構、資料類型、表之間的連結和約束等初始化工作,大多在建立表時使用,或者說,DDL語言操作的對像是資料庫中的對象而非物件所包含的資料。 Mysql)都會提交目前的交易。時,DDL語句會自動提交,不能回滾。例如SELECT、UPDATE、INSERT、DELETE、MERGE操作,是用來對資料庫裡的表格資料進行操作的語言。 ## 當執行DML指令如果沒有提交,將不會被其他會話看到。使未提交的DML指令提交。 revoke等)。操作。

 1、CREATE : 在数据库中创建新的数据对象
 2、ALTER : 修改数据库中对象的数据结构
 3、DROP : 删除数据库中的对象
 4、DISABLE/ENABLE TRIGGER : 修改触发器的状态
 5、UPDATE STATISTIC : 更新表/视图统计信息
 6、TRUNCATE TABLE : 清空表中数据
 7、COMMENT : 给数据对象添加注释
 8、RENAME : 更改数据对象名称

由於DML語句對錶資料進行操作的時候都會加上行級鎖,確認完成後,必須加上事物處理結束的命令COMMIT才能正式生效,否則改變不一定寫入資料庫裡。操作, 可以用指令ROLLBACK 復原。

在執行INSERT,DELETE和UPDATE語句前最好估算一下可能操作的記錄範圍,應該把它限定在較小範圍內,例如一萬筆記錄,否則ORACLE處理這個事物用到很大的回退段。程式響應慢甚至失去響應。如果記錄數上十萬以上這些操作。可以把這些SQL語句分段分次完成。其間加上COMMIT確認事物處理。

  根據語句操作目標的不同,還是很好區分這四種類型:DDL-資料物件; DML-資料; DCL-權限; TCL-交易。

  唯一需要注意的是TRUNCATE,儘管從功能上看相當於DELETE表中所有數據,但由於它所操作的對像是table這個級別而非row(由於某種原因不能立即刪除表數據時,TRUNCATE會鎖定整張表,而DELETE鎖定的則是row),所以歸在DDL。    

#

以上是關於概念DDL、DML、DCL、TCL詳細解釋的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn