對於SQL語言,有兩個組成部分:
DML(data manipulation language):它們是SELECT、UPDATE、INSERT、DELETE,就象它的名字一樣,這4條命令是用來對資料庫裡的資料進行操作的語言。
DDL(data definition language):DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定義或改變表(TABLE)的結構,資料類型,表之間的連結和約束等初始化工作上,他們大多在建立表時使用。 回答者:zhongsojun | 三級| 2009-9-1 19:30
SQL語言共分為四大類:資料查詢語言DQL,資料操縱語言DML,
資料定義語言 (Data Definition Language)DDL,資料控制語言DCL。
1 資料查詢語言DQL
資料查詢語言DQL基本結構是由SELECT子句,FROM子句,WHERE
子句組成的查詢塊:
SELECT <欄位名表>
FROM <表或視圖名>
WHERE <查詢條件>
2 資料操縱語言
資料操縱語言DML主要有三種形式:
1) 插入:INSERT
2) 更新:UPDATE
3) 刪除:DELETE
3 資料定義語言 (Data Definition Language)DDL
資料定義語言 (Data Definition Language)DDL用來建立資料庫中的各種對象-----表、視圖、
索引、同義字、聚簇等如:
CREATE TABLE/VIEW/INDEX/SYN/CLUSTER
4 資料控制語言DCL
資料控制語言DCL用來授予或回收訪問資料庫的某種特權,並控制
資料庫操縱事務發生的時間及效果,對資料庫實行監視等。如:
1) GRANT:授權。
2) ROLLBACK [WORK] TO [SAVEPOINT]:回退到某一點。
復原---ROLLBACK
復原命令使資料庫狀態回到上次最後提交的狀態。其格式為:
SQL>ROLLBACK;
3) COMMIT [WORK]:提交。 www.2cto.com
在資料庫的插入、刪除和修改操作時,只有當事務在提交到資料
庫時才算完成。在事務提交前,只有操作資料庫的這個人才能有權看
到所做的事情,別人只有在最後提交完成後才可以看到。
提交資料有三種類型:顯式提交、隱式提交及自動認可。下面分
別說明這三種類型。
(1) 顯式提交
用COMMIT命令直接完成的提交為顯式提交。其格式為:
SQL>COMMIT;
(2) 隱式提交
用SQL命令間接完成的提交為隱式提交。這些命令是:
ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,
EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。
(3) 自動認可
若把AUTOCOMMIT設定為ON,則在插入、修改、刪除語句執行後,
系統將自動進行提交,這就是自動認可。其格式為:
SQL>SET AUTOCOMMIT ON;
DDL,DML,DCL 之間的區別
What are the difference between DDL, DML and DCL commands?
DDL,DML和DCL命令之間的區別。(DDL是資料定義語言 (Data Definition Language),如:)
DDL is Data Definition Language statements. Some examples:
CREATE - to create objects in the database(在資料庫中建立對象)
ALTER - alters the structure of the database(修改資料庫的結構)
DROP - delete objects from the database(從資料庫中刪除對象)
TRUNCATE - remove all records from a table, including all spaces allocated for the records are removed(從一個表中移除所有記錄,包括為記錄分配的所有空間也一併移除)
COMMENT - add comments to the data dictionary(為資料字典添加備忘)
GRANT - gives user's access privileges to database(為使用者賦予存取權限)
REVOKE - withdraw access privileges given with the GRANT command(撤銷由GRANT命令賦予的存取權限)
DML is Data Manipulation Language statements. Some examples:(DML是資料操作語言,如:)
SELECT - retrieve data from the a database(從指定的資料庫中返回符合一定要求的資料)
INSERT - insert data into a table(向一個表中插入資料)
UPDATE - updates existing data within a table(更新表記憶體在的資料)
DELETE - deletes all records from a table, the space for the records remain(刪除表中所有記錄,但保留記錄所佔空間)
CALL - call a PL/SQL or Java subprogram(調用一個PL/SQL或JAVA子程式)
EXPLAIN PLAN - explain access path to data(解釋分析資料的訪問路徑)
LOCK TABLE - control concurrency(控制並發)
DCL is Data Control Language statements. Some examples:(DCL 是資料控制語言,如:)
COMMIT - save work done(儲存已完成工作)
SAVEPOINT - identify a point in a transaction to which you can later roll back(在事務中標示一個點,便於之後可以復原到此處)
ROLLBACK - restore database to original since the last COMMIT(在最近一次COMMIT之後重新儲存資料庫)
SET TRANSACTION - Change transaction options like what rollback segment to use(改變事務選項)