一. 从功能上划分,SQL 语言可以分为DDL,DML和DCL三大类。
1. DDL(Data Definition Language) (隐式提交)
数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言 ;
create---创建表
alter---修改表
drop---删除表
2. DML(Data Manipulation Language) (除select外 都是显示提交,如果设置了autocommit 则都自动提交)
数据操纵语言,SQL中处理数据等操作统称为数据操纵语言 ;
insert---数据的插入
delete---数据的删除
update---数据的修改
select---数据的查询
显式提交的,也就是说要在执行完DML语句之后,执行 COMMIT
3. DCL(Data Control Language)
数据控制语言,用来授予或回收访问数据库的某种特权,并控制 数据库操纵事务发生的时间及效果,对数据库实行监视等;
grant--- 授权。
rollback---回滚。
commit--- 提交。
二. 提交数据有三种类型:显式提交、隐式提交及自动提交。
下面分 别说明这三种类型。
(1) 显式提交
用 commit 命令直接完成的提交为显式提交。
(2) 隐式提交
用 SQL 命令间接完成的提交为隐式提交。这些命令是:create-创建表,alter-修改表,drop-删除表 ,AUDIT , COMMENT , CONNECT , CREATE , DISCONNECT , EXIT , GRANT , NOAUDIT , QUIT , REVOKE , RENAME 。
隐式提交 在运行以上这些语句后,mysql数据库会自动隐式提交,例如 CREATE TABLE,在运行脚本后,表已经建好了,并不在需要你再进行显式提交。
(3) 自动提交
若把 AUTOCOMMIT 设置为 ON ,则在插入、修改、删除语句执行cursor.excute(sql)后,系统将自动进行提交,这就是自动提交。其格式为: SQL>SET AUTOCOMMIT ON ; Ref:https://blog.youkuaiyun.com/qq_15559817/article/details/81449746
————————————————
版权声明:本文为优快云博主「人鱼线」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/qfikh/article/details/103211586