1,创建表
CREATE TABLE student(
id INT UNSIGNED PRIMARY KEY auto_increment not null,
name varchar(20) not null,
age tinyint UNSIGNED default 0,
height decimal(5,2),
gender enum("男",'女')
);
注释:UNSIGNED 无符号类型
primary key == 主键 等价于 唯一 (UNIQUE) 且 非空 (NOT NULL)
auto_increment 自增
TINYINT 1字节 (-128,127) (0,255) 小整数值
INT或INTEGER 4 字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
decimal(5,2) 十进制小数,就是这个数为5位,包括有两位小数
enum 枚举
2,查看表结构
mysql> desc student;
+--------+-------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------------+------+-----+---------+----------------+
| id | int unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(20) | NO | | NULL | |
| age | tinyint unsigned | YES | | 0 | |
| height | decimal(5,2) | YES | | NULL | |
| gender | enum('男','女') | YES | | NULL | |
+--------+-------------------+------+-----+---------+----------------+
5 rows in set (0.23 sec)
3,修改表结构,添加字段
alter table 表 add 列名称 类型 约束;
追加
alter table student add addr varchar(50);
4,修改表-修改字段类型 modify
alter table 表 modify 列名 类型 约束
alter table student MODIFY gender enum("男","女","不详") default "男";
5,修改表-修改字段名,字段类型 change
alter table 表 change 原列名 新列名 类型 约束
alter table student change height phone varchar(10) default 'xxxxxxx';
6,删除表-删除字段
alter table 表 drop 列名;
alter table student drop name;