创建模式 CREATE SCHEMA ch3; 显示模式 SHOW SCHEMAS; 删除模式,没有级联删除或者限制删除 DROP SCHEMA ch3; 2.基本表创建 CREATE TABLE Student( Sno CHAR(9) PRIMARY KEY, /*主键,不可重复,不能为空=...

创建模式

CREATE SCHEMA ch3;

显示模式

SHOW SCHEMAS;

删除模式,没有级联删除或者限制删除

DROP SCHEMA ch3;
2.基本表

创建

CREATE TABLE Student(
Sno CHAR(9) PRIMARY KEY, /*主键,不可重复,不能为空=UNIQUE+NOT NULL*/
Sname CHAR(20) UNIQUE, /*不可重复
Ssex CHAR(2),
Sage SMALLINT,
Sdept CHAR(20)
);

建表约束
名含义名含义
PRIMARY KEY主键,不能重复,不能为空PRIMARY KEY(KEY1, KEY2)联合主键,要求同主键
AUTO_INCREMENT自增约束UNIQUE唯一性约束
NOT NULL非空约束DEFAULT默认约束,初始值
FOREIGN KEY(key1) REFERENCES父表(key)外键约束,子表里列的信息必须是对应父表的子集
ON UPDATE CASCADE
ON DELETE CASCADE
外键级联约束(我自己编的,不知道有没有,放在外键约束后边)
数字类型
类型名取值范围(有符号或无符号)占用存储(字节)
TINYINT-128~127或0~
-11
SMALLINT-32768~32767或0~
-12
MEDIUMINT
~
-1或0~
-13
INT
~
-1或0~
-14
BIGINT
~
-1或0~
-18
FLOAT4
DOUBLE8
DECIMAL(M)M+2(VER>3.23)
日期类型
类型名含义类型名含义
DATE日期,‘YYYY-MM-DD’TIME时间,‘HH:MM:SS’
DATETIME日期加时间,‘YY-MM-DD HH:MM:SS’TIMESTAMP时间戳,以秒为单位
字符串类型
类型名含义类型名含义
CHAR定长字符串VARCHAR变长字符串
TINYBLOBBLOB(
)TINYTEXTTEXT(
)
BLOBBLOB(
)TEXTTEXT(
)
MEDIUMBLOBBLOB(
)MEDIUMTEXTTEXT(
)
LONGBLOBBLOB(
)LONGTEXTTEXT(
)
ENUM('VALUE1', 'VALUE2', ....)枚举:列只能复制为某个枚举成员或NULLSET('VALUE1', 'VALUE2', ...)集合:列可以赋值为多个集合成员或NULL

BLOB是一个能保存可变数量的数据的二进制大对象。

显示模式下所有的表名

SHOW TABLES;

显示表信息,包含不同列的不同信息,类型等

DESC Student;

删除表

DROP TABLE Student;
级联删除:当被删除的表为某一张表的父表时,直接删除无法删除,所以需要先删除子表才能删除父表
类似的还有级联更新
修改基本表
新增一列
ALTER TABLE Student ADD [COLUMN] 名类型约束条件;
修改某一列
ALTER TABLE Student MODIFY COLUMN名新的类型新的约束条件;
ALTER TABLE Student DROP KEY名;删除唯一性要求
ALTER TABLE Student ADD UNIQUE(名);添加唯一性要求
删除某一列
ALTER TABLE Student DROP COLUMN名;