SQL语言分类

分类 全称 说明
DDL Data Definition Language 数据定义语言,用来定义数据库对象(数据库,表,字段)
DML Data Manipulation Language 数据操作语言,用来对数据库表中的数据进行增删改
DQL Data Query Language 数据查询语言,用来查询数据库中表的记录
DCL Data Control Language 数据控制语言,用来创建数据库用户、控制数据库的访问权限

DDL-数据库操作

  1. 查询所有数据库

    1
    SHOW DATABASES;
  2. 查询当前数据库

    1
    SELECT DATABASE( );
  3. 创建数据库

    1
    CREATE DATABASE[IF NOT EXISTS]数据库名 [DEFAULT CHARSET 字符集][COLLATE 排序规则];
  4. 删除数据库

    1
    DROP DATABASE[IF EXISTS]数据库名;
  5. 使用数据库

    1
    USE 数据库名;

DDL-表操作

  1. 查询当前数据库所有表

    1
    SHOW TABLES;
  2. 查询表结构

    1
    DESC 表名;
  3. 查询指定表的建表语句

    1
    SHOW CREATE TABLE表名;

DDL -表创建

1
2
3
4
5
6
CREATE TABLE 表名(
字段1 字段1类型[COMMENT字段1注释],
字段2 字段2类型[COMMENT字段2注释],
字段3 字段3类型[COMMENT字段3注释],
字段4 字段n类型[COMMENT字段n注释]
)[COMMENT 表注释];

SQL常用数据类型

类型 大小 有符号(SIGNED)范围
TINYINT 1 byte (-128,127)
SMALLINT 2 byte (-32768,32767)
MEDIUMINT 3 byte (-8388608,8388607)
INT或INTEGER 4 byte (-2147483648,2147483647)
BIGINT 8 byte (-2^63,2^63-1)
FLOAT 4 byte
DOUBLE 8 byte
DECIMAL 依赖于M(精度)和D(标度)的值
CHAR 0-255 bytes 定长字符串
VARCHAR 0-65535 bytes 变长字符串
TINYBLOB 0-255 bytes 不超过255个字符的二进制数据
TINYTEXT 0-255 bytes 短文本字符串
BLOB 0-65535 bytes 二进制形式的长文本数据
TEXT 0-65535 bytes 长文本数据
MEDIUMBLOB 0-16777215 bytes 二进制形式的中等长度文本数据
MEDIUMTEXT 0-16777215 bytes 中等长度文本数据
LONGBLOB 0-4 294 967 295 bytes 二进制形式的极大文本数据
LONGTEXT 0-4 294 967 295 bytes 极大文本数据

DDL-表修改和删除

  1. 添加字段

    1
    ALTER TABLE表名 ADD 字段名 类型(长度) [COMMENT 注释] [约束];
  2. 修改字段名和字段类型

    1
    ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];
  3. 删除字段

    1
    ALTER TABLE 表名 DROP 字段名;
  4. 修改表名

    1
    ALTER TABLE 表名 RENAME TO 新表名;
  5. 删除表

    1
    DROP TABLE[IF EXISTS]表名;
  6. 删除指定表,并重新创建该表

    1
    TRUNCATE TABLE 表名;