增加(create)
创建库:CREATE DATABASE IF NOT EXISTS 库名
创建表:
CREATE TABLE STUDENT(
ID INT,
NAME VARCHAR (20)
);
删除(drop)
删除库:DROP DATABASE IF EXISTS 库名
删除表:DROP table IF EXISTS 表名
修改(alert)
修改库字符集:ALTER DATABASE 库名 CHARACTER SET GBK
修改表
修改列类型或约束:ALTER TABLE student MODIFY sname INT
修改列名字:ALTER TABLE student CHANGE `Name` sname VARCHAR(20)
增加列:ALTER TABLE student ADD COLUMN sex VARCHAR(2)
删除列:ALTER TABLE student DROP COLUMN sex
表的其它操作
查看表结构:DESC 表名;
重命名:RENAME TABLE student to student1
复制表结构:CREATE TABLE student1 LIKE student
复制表结构及数据:
CREATE TABLE student2 as
SELECT * FROM student(as可以省)
数据类型
整型
浮点型
字符型
例子:
日期型
例
timestamp容易受时区的影响
常见的约束
- 主键约束(primary key)
- 非空约束(not null)
- 唯一约束(unique)
- 默认约束(default)
- 外键约束(foreign key)
- 检查约束(check mysql不支持)
添加约束的两种方式
- 行级约束:直接在列后面添加
- 表记约束:
添加外键
ALTER TABLE student ADD CONSTRAINT fk_stu_cou FOREIGN KEY(cid) REFERENCES course(cid)(CONSTRAINT fk_stu_cou )可以省略
ALTER TABLE student MODIFY `Name` VARCHAR(18) NOT NULL删除约束
自增:AUTO_INCREMENT