DML(data manipulation language)是数据操纵语言:它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言。
DDL(data definition language)是数据定义语言:DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用。
DCL(DataControlLanguage)是数据库控制语言:是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。
数据自动提交有两种操作:
1.DDL操作,一旦执行,自动提交
2.DML默认情况下一旦执行,自动提交,但可通过set autocommit = false取消自动提交。
3.默认关闭连接时,会自动提交
当一个事务中执行多个操作时,要么所有事务都被提交commit,那么修改永久保存下来;要么数据库管理系统将放弃所做的所有修改,整个事务回滚rollback到最初状态。
但数据一旦提交,不可回滚。