數據操縱語言

資料庫專用編程語言之一

數據操縱語言(Data Manipulation Language, DML)是用於資料庫操作,對資料庫其中的對象和數據運行訪問工作的編程語句,通常是資料庫專用編程語言之中的一個子集,例如在信息軟體產業通行標準的SQL語言中,以INSERT、UPDATE、DELETE三種指令為核心,分別代表插入(意指新增或創建)、更新(修改)與刪除(銷毀)。在使用資料庫的系統開發過程中,其中應用程序必然會使用的指令;而加上 SQL的SELECT語句,歐美地區的開發人員把這四種指令,以“CRUD”(分別為 Create, Read, Update, Delete英文四前綴字母縮略的術語)來稱呼;而亞洲地區使用漢語的開發人員,或可能以四個漢字:增 查 改 刪 來略稱。

語法結構


DML 的主要功能即是訪問數據,因此其語法都是以讀取與寫入資料庫為主,除了INSERT以外,其他指令都可能需搭配WHERE指令來過濾數據範圍,或是不加WHERE指令來訪問全部的數據。

SELECT

主條目:SELECT
SELECT是SQL數據操縱語言(DML)中用於查詢表格內欄位數據的指令,可搭配條件限制的子句(如where)或排列順序的子句(如order)來獲取查詢結果。

INSERT

主條目:INSERT
INSERT是將數據插入到資料庫對象中的指令,可以插入數據的資料庫對象有數據表以及可更新查看錶兩種。

UPDATE

主條目:UPDATE
UPDATE指令是依給定條件,將匹配條件的數據表中的數據更新為新的數值。

DELETE

主條目:DELETE
DELETE指令為自資料庫對象中刪除數據的指令。

操作


插操作

把數據插入到資料庫中指定的位置上去,如Append 是在資料庫文件的末尾添加記錄,而INSERT是在指定記錄前添加記錄。

刪操作

刪除資料庫中不必再繼續保留的一組記錄,如DELETE 對資料庫中記錄作刪除標誌。PACK是將標有刪除標誌的記錄徹底清除掉。ZAP 是去掉資料庫文件的所有記錄。

改操作

修改記錄或資料庫模式,或在原有數據的基礎上,產生新的關係模式和記錄,如連接Join操作和投影操作Projection.

排序操作

改變物理存儲的排列方式。如SORT命令按指定關鍵字串把DBF文件中記錄排序。從物理存儲的觀點看,資料庫發生了變化,但從邏輯的觀點(或集合論觀點看),新的關係與排序前是等價的。

檢索操作

從資料庫中檢索出滿足條件的數據,它可以是一個數據項,一個記錄或一組記錄。如BROWSE單元實現對數據的瀏覽操作。SELECT選出滿足一定條件和範圍的記錄。

類型


自含式

可由用戶獨立地通過交互方式進行操作

嵌入式

不能獨立地進行操作,必須嵌入某一種宿主語言(如C、PL\1等)中才能使用

用戶界面功能


CRUD在多數用戶界面的應用程序,也是與系統相關的重要功能。例如在通訊錄軟體中,基本存儲單元是單個聯繫人條目。一個通訊錄軟體最基本的功能,必須允許用戶可以操作:
● 添加或創建新的聯繫人條目
● 讀取,檢索,搜索或查看現有條目
● 更新或編輯現有條目
● 刪除現有條目
如果沒有這四個操作,該軟體或許不是完整的版本。由於這些操作很重要,它們通常在一個大的功能標題下記錄和描述,例如“聯繫人管理”,“內容管理”或“聯繫人維護”(或“文檔管理”),具體取決於基本存儲單元 特定的應用程序)。