简言之:
1,DDL(DataDefinitionLanguage):数据定义语言,用来定义数据库对象:库、表、列等;
2,DML(DataManipulationLanguage):数据操作语言,用来定义数据库记录(数据);
3,DQL(DataQueryLanguage):数据查询语言,用来查询记录(数据);
4,DCL(DataControlLanguage):数据控制语言,用来定义访问权限和安全级别。
举例说明
1,DDL
用来定义数据库对象:库、表、列等;
适用范围:对数据库中的某些对象(例如,database,table)进行管理,如Create,Alter和Drop.
注意: 在生产环境中,DDL类操作需要慎用,因为不能做roolback操作,一旦执行无法回退。
2,DML
对数据库中的数据进行一些简单操作,,如insert,delete,update,select(插入、删除、修改、检索)等都是DML.
对select来说,它有两种划分方法,可以放在DML,也可以单独放在DQL
3,DQL
用来查询记录(数据);
基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块:SELECT <字段名表>FROM <表或视图名>WHERE <查询条件>
4,DCL
用来定义访问权限和安全级别。
数据控制语言DCL用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等。如:
- GRANT:授权。
- ROLLBACK [WORK] TO[SAVEPOINT]:回退到某一点。回滚—ROLLBACK回滚命令使数据库状态回到上次最后提交的状态。其格式为:SQL>ROLLBACK;
- COMMIT [WORK]:提交。
在数据库的插入、删除和修改操作时,只有当事务在提交到数据库时才算完成。在事务提交前,只有操作数据库的这个人才能有权看到所做的事情,别人只有在最后提交完成后才可以看到。提交数据有三种类型:显式提交、隐式提交及自动提交。
下面分别说明这三种类型。
(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;