库操作

创建数据库

语法

CREATE DATABASE 数据库名 charset utf8;

数据库命名规则

  1. 可以由字母、数字、下划线、@、#、$
  2. 区分大小写
  3. 唯一性
  4. 不能使用关键字如 create select
  5. 不能单独使用数字
  6. 最长128位
  7. 基本上跟python或者js的命名规则一样

数据库相关操作

  1. 查看数据库
    show databases;
    show create database db1;
    select database();
  2. 选择数据库
    USE 数据库名
  3. 删除数据库
    DROP DATABASE 数据库名;
  4. 修改数据库
    alter database db1 charset utf8;

表操作

存储引擎

https://www.cnblogs.com/zhaohaiyu/p/11430278.html

表介绍

表相当于文件,表中的一条记录就相当于文件的一行内容,表中的一条记录有对应的标题,称为表的字段

第一行的id、name2、age是字段,,其余的,一行内容称为一条记录。

创建表

3.1 建表语法

#语法:
create table 表名(
字段名1 类型[(宽度) 约束条件],
字段名2 类型[(宽度) 约束条件],
字段名3 类型[(宽度) 约束条件]
);

注意:

  1. 在同一张表中,字段名是不能相同
  2. 宽度和约束条件可选、非必须,宽度指的就是字段长度约束,例如:char(10)里面的10
  3. 字段名和类型是必须的

查看表结构

mysql> describe t1; #查看表结构,可简写为:desc 表名
+-------+-----------------------+------+-----+---------+-------+
| Field | Type                  | Null | Key | Default | Extra |
+-------+-----------------------+------+-----+---------+-------+
| id    | int(11)               | YES  |     | NULL    |       |
| name  | varchar(50)           | YES  |     | NULL    |       |
| sex   | enum('male','female') | YES  |     | NULL    |       |
| age   | int(3)                | YES  |     | NULL    |       |
+-------+-----------------------+------+-----+---------+-------+
mysql> show create table t1\G; #查看表详细结构,可加\G

MySQL的基础数据类型

https://www.cnblogs.com/zhaohaiyu/p/11435242.html

表的完整性约束

https://www.cnblogs.com/zhaohaiyu/p/11435537.html

修改表 alter table

  1. 修改表名

    ALTER TABLE 表名 
                        RENAME 新表名;
  2. 增加字段

    ALTER TABLE 表名
                        ADD 字段名  数据类型 [完整性约束条件…], #注意这里可以通过逗号来分割,一下添加多个约束条件
                        ADD 字段名  数据类型 [完整性约束条件…];
    ALTER TABLE 表名
                        ADD 字段名  数据类型 [完整性约束条件…]  FIRST; #添加这个字段的时候,把它放到第一个字段位置去。
    ALTER TABLE 表名
                        ADD 字段名  数据类型 [完整性约束条件…]  AFTER 字段名;#after是放到后的这个字段的后面去了,我们通过一个first和一个after就可以将新添加的字段放到表的任意字段位置了。
  3. 删除字段

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

    ALTER TABLE 表名 
                        MODIFY  字段名 数据类型 [完整性约束条件…];
    ALTER TABLE 表名 
                        CHANGE 旧字段名 新字段名 旧数据类型 [完整性约束条件…];  #change比modify还多了个改名字的功能,这一句是只改了一个字段名
    ALTER TABLE 表名 
                        CHANGE 旧字段名 新字段名 新数据类型 [完整性约束条件…];#这一句除了改了字段名,还改了数据类型、完整性约束等等的内容