文章目录
创建数据表——CREATE
CREATE TABLE 表名(
列名1 数据类型 [约束字段],
列名2 数据类型 [约束字段],
...
列名3 数据类型 [约束字段]
);
表的结构——括号内定义
注意:各个字段之间要用逗号(,) 进行分隔,语句的最后用分号(;)结束。
数据表达命名规则
- 长度最好不要超过30个字符;
- 多个单词之间使用下划线"_"分隔,不允许有空格;
- 不允许为MySQL的关键字;
- 不允许与同一数据库中的其他的数据表同名。
实例1
- 根据表的数据创建employee。
- 创建数据库 firm
CREATE DATABASE firm;
- 选择数据库 firm
USE firm;
- 创建数据表 employee
CREATE TABLE employee(
id INT(11) PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(30) NOT NULL,
sex ENUM('男','女') DEFAULT'男',
calling BIGINT(11),
s_id INT(11),
entry_time DATE
);
- 查询数据表 employee
mysql> SHOW TABLES;
+----------------+
| Tables_in_firm |
+----------------+
| employee |
+----------------+
1 row in set (0.00 sec)
设置约束字段
主键约束 —— PRIMARY KEY
主键也称主码
用于标识表中唯一的一条记录;
一张表中只能有一个主键;
主键值不能为空。
定义字段时的语法
id INT(11) PRIMARY KEY
定义所有字段后的语法
PRIMARY KEY(id)
作用:限制被描述的列的数据不能为空也不能重复
如果一个列被主键约束了 那么这个列为当前表的唯一列
自增约束 —— AUTO_INCREMENT
在插入数据时,希望每条记录的“编号”自动生成,并按顺序排列,则可以为此字段设置自增约束。
注意:
一张表格中只能设置一个字段为自增约束,并且该字段必须为主键;
默认的初始值为1,每增加一条记录,字段值自动增加1;
字段类型必须为整数类型。
语法:
id INT(11) PRIMARY KEY AUTO_INCREMENT
作用:从1开始 每添加一条数据 在上一条的基础上+1
被自动增长描述的列不需要手动输入数据
非空约束 —— NOT NULL
语法:
type VARCHAR(30) NOT NULL
作用:限制被描述的列的数据不能为空
在向用户插入数据时,如果设置了非空约束的字段没有指定值,系统就会报错。
唯一约束 —— UNIQUE
定义字段时的语法 :
name VARCHAR(30) UNIQUE
定义所有字段后设置唯一性约束:
UNIQUE KEY(name)
作用:限制被描述的列的数据不能重复 允许为null null:表示没有任何数据
当用户在设置了唯一性约束的字段中插入的数据与数据表中已存在的数据相同时,系统就会报错。
无符号约束 —— UNSIGNED
语法:
price DECIMAL(6,2) UNSIGNED
作用:规定此列所存储的数据不为负数。
默认约束 —— DEFAULT
**语法:**
num INT(11) DEFAULT 0
作用:可以给一个列添加一个默认值 字符串和时间都需要用单引号包裹起来