oracle中DML和DDL

对于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, 数据定义语言DDL,数据控制语言DCL。 1 数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE 子句组成的查询块: SELECT FROM WHERE 2 数据操纵语言 数据操纵语言DML主要有三种形式: 1) 插入:INSERT 2) 更新:UPDATE 3) 删除:DELETE 3 数据定义语言DDL 数据定义语言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是数据定义语言,如:) 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(改变事务选项)

猜你喜欢

转载自younglibin.iteye.com/blog/1604257
今日推荐