Mysql 中 DDL、DML、DQL、DCL、TCL
1. DDL(Data Definition Languages)语句:即数据库定义语句
用来创建数据库中的表、索引、视图、存储过程、触发器等,常用的语句关键字有:CREATE、 ALTER、 DROP、 SHOW、 DESC、 TRUNCATE
CREATE
创建数据库
CREATE DATABASE 数据库名;
创建表
- CREATE TABLE table_name (column_name column_type);
- CREATE TABLE table_name (column_name column_type)ENGINE=存储引擎[InnoDB | MyISAM] DEFAULT CHARSET=编码方式(uft8);
- CREATE [可选-临时表:TEMPORARY] TABLE table_name (column_name column_type,
PRIMARY KEY(主键ID),
INDEX (索引字段[多个用逗号隔开]),
)ENGINE=存储引擎(InnoDB、MyISAM) DEFAULT CHARSET=编码方式(uft8);
ALTER
修改表
ALTER TABLE 表名
操作关键字[RENAME | ADD | CHANGE | MODIFY | DROP]
操作类型[COLUMN(默认) | INDEX]
操作的具体内容
[ // 可选
NOT NULL[是非允许为NULL]
DEFAULT 1[默认值]
COMMENT "注释"
AFTER 字段[位置:FIRST | AFTER ]
];
- ALTER TABLE 表名 RENAME 新表名;
- ALTER TABLE 表名 ADD 字段 字段类型;
- ALTER TABLE 表名 CHANGE 当前字段 新字段 字段类型;
- ALTER TABLE 表名 MODIFY 字段 新的字段类型;
- ALTER TABLE 表名 DROP 要删除字段;
DROP
删除表
DROP TABLE 表名;
SHOW
显示状态
SHOW STATUS;
显示变量
SHOW VARIABLES;
显示包含表名
SHOW TABLES;
显示创建数据表(CREATE TABLE) 语句
SHOW CREATE TABLE 表名 G;
复制表结构 + 数据:「使用该语句」 结合 「INSERT INTO ... SELECT... 」实现的
...
DESC
查询表基础结构
DESC 表名;
TRUNCATE
TRUNCATE 表名;
1. 删除表中所有行,TRUNCATE TABLE 与没有 WHERE 子句的 DELETE 语句类似;但是,TRUNCATE TABLE 速度更快,使用的系统资源和事务日志资源更少.
2. 效率方面:drop > truncate > delete
3. delete 是 DML语句,不会自动提交(mysql 可以配置是否自动提交,默认自动,即不使用事务会自动提交)。drop/truncate 都是 DDL 语句, 执行后会自动提交。
2. DML(Data Manipulation Language)语句:即数据操纵语句
用来添加、更新、删除等,常用的语句关键字有:INSERT、 UPDATE、 DELETE、 MERGE、CALL、 EXPLAIN、 LOCK TABLE、包括通用性的增删改查。
3. DQL(Data Query Language)语句:即数据查询语句
用来查询,主要的关键字有:SELECT
4. DCL(Data Control Language)语句:即数据控制语句
用于授权/撤销数据库及其字段的权限。常用的语句关键字有:GRANT、REVOKE。
5. TCL(Transaction Control Language)语句:事务控制语句
用于控制事务,常用的语句关键字有:BEGIN、 START TRANSACTION、 COMMIT、 ROLLBACK、 SAVEPOINT、 SET TRANSACTION。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341