Mysql 中 DDL、DML、DQL、DCL、TCL

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。

你可能感兴趣的:(Mysql 中 DDL、DML、DQL、DCL、TCL)