MySql建数据库,建表,建表约束

来源:互联网 发布:linux删除tomcat日志 编辑:程序博客网 时间:2024/05/03 15:23

———–基本操作,建库,建表

创建数据库

CREATE DATABASE_NAME

创建表

CREATE TABLE TABLE_NAME

删除表

DROP TABLE TABLE_NAME

查看表的定义信息

DESC table_name

查看表的详细信息

SHOW CREATE TABLE TABLE_NAME

添加表的属性

ALTER TABLE TABLE_NAME
ADD 属性名 属性类型

删除表的属性

ALTER TABLE TABLE_NAME
DROP 属性名

修改表的字段的数据类型

ALTER TABLE TABLE_NAME
MODIFY 属性名 数据类型

修改表的字段的名字

ALTER TABLE TABLE_NAME
CHANGE 旧属性名 新属性名 新数据类型

修改字段的顺序, First表示将字段1调到第一个位置,after 表示将字段1调到属性名2后

ALTER TABLE TABLE_NAME
MODIFY 属性名1 数据类型 FIRST|AFTER 属性名2

—————操作表的约束

NOT NULL

CREATE TABLE TABLE_NAME {
deptno int not null,
dname varchar(20)
};

默认值default

CREATE TABLE TABLE_NAME {
deptno int not null,
dname varchar(20) DEFAULT ‘hehe’
};

唯一约束

CREATE TABLE TABLE_NAME {
deptno int not null,
dname varchar(20) UNIQUE
};

或者用SQL语句contraint
CREATE TABLE TABLE_NAME {
deptno int not null,
dname varchar(20),
CONSTRAINT uk_name UNIQUE(dname)
};

主键约束 primary key

或者
CREATE TABLE TABLE_NAME {
deptno int not null,
dname varchar(20),
CONSTRAINT uk_dep PRIMARY KEY(deptno)
};

多字段主键

CREATE TABLE TABLE_NAME {
deptno int not null,
dname varchar(20),
CONSTRAINT uk_dep_name PRIMARY KEY(deptno, dname)
};

设置字段值自动增加,+1

CREATE TABLE TABLE_NAME {
deptno int not null AUTO_INCREMENT,
dname varchar(20) DEFAULT ‘hehe’
};

外键约束

CREATE TABLE TABLE_NAME2 {
emtno int PRIMARY KEY,
ename varchar(20) NOT NULL,
deptno int,
CONSTRAINT fk_eno FOREIGN KEY(deptno) REFERENCES reference_table_name(deptno)
};