操作数据库:CRUD

C(Create):创建

  • 创建数据库

    • CHARACTER SET 数据库名称;
  • 创建数据库,判断不存在,再创建

    • CREATE DATABASE IF NOT EXISTS 数据库名称;
  • 创建数据库,并指定字符集

    • CREATE DATABASE 数据库名称 CHARACTER SET 字符集名;
  • -- 创建db1数据库,判断是否存在,并指定字符集为gbk
    CREATE DATABASE IF NOT EXISTS db1 CHARACTER SET gbk;

R(Retrieve):查询

  • 查询所有数据库的名称

    • SHOW DATABASE;
  • 查询某个数据库的字符集:查询某个数据库的创建语句

    • SHOW CREATE DATABASE 数据库名称;

U(Update):修改

  • 修改数据库的字符集

    • ALTER DATABASE 数据库名称 CHARACTER SET 字符集名称;

D(Delete):删除

  • 删除数据库

    • DROP DATABASE 数据库名称;
  • 判断数据库存在,存在再删除

    • DROP DATABASE IF EXIST 数据库名称;

使用数据库

  • 查询当前正在使用的数据库名称

    • SELECT DATABASE();
  • 使用数据库

    • USE 数据库名称;

操作表:CRUD

C(Create):创建

  • 语法

    CREATE TABLE 表名(
        列名1 数据类型1,
        列名2 数据类型2,
        ...
        列名n 数据类型n
    );
  • 复制表

    • CREATE TABLE 表名 LIKE 被复制的表名;
  • 常用数据类型

    • int:整数类型

      • age int
    • double:小数类型

      • score double(5,2)
    • date:日期,只包含年月日,yyyy-MM-dd
    • datetime:日期,包含年月日时分秒,yyyy-MM-dd HH:mm:ss
    • timestamp:时间戳类型,包含年月日时分秒,yyyy-MM-dd HH:mm:ss

      • 如果不对该字段赋值或赋值为null,则默认使用当前系统时间自动赋值
    • varchar:字符串

      • name varchar(20) #姓名最大20个字符串
  • CREATE TABLE student(
        id int,
        name varchar(32),
        age int,
        score double(4,1),
        birthday date,
        inert_time timestamp
    );

R(Retrieve):查询

  • 查询某个数据库中所有表的名称

    • SHOW TABLES;
  • 查询表结构

    • DESC 表名;

U(Update):修改

  • 修改表名

    • ALTER TABLE 表名 RENAME TO 新的表名;
  • 修改表的字符集

    • ALTER TABLE 表名 CHARACTER SET 字符集名称;
  • 添加一列

    • ALTER TABLE 表名 ADD 列名 数据类型;
  • 修改列名称、类型

    • ALTER TABLE 表名 CHANGE 列名 新列名 新的数据类型;
    • ALTER TABLE 表名 MODIFY 列名 新数据类型;
  • 删除列

    • ALTER TABLE 表名 DROP 列名;

D(Delete):删除

  • DROP TABLE 表名;
  • DROP TABLE IF EXISTS 表名;
最后修改:2021 年 04 月 14 日
如果觉得我的文章对你有用,请随意赞赏