在数据库如何创建表
CREATE TABLE 表名(
列名 数据类型 约束
)
创建如下两个表:
CREATE TABLE dept(
deptno INT(2) PRIMARY KEY AUTO_INCREMENT COMMENT'部门
编号',
DNAME VARCHAR(20) COMMENT'部门名称',
loc VARCHAR(30) COMMENT'部门地点'
)
CREATE TABLE emp(
empno INT(4) PRIMARY KEY AUTO_INCREMENT COMMENT'员工
编号',
ename VARCHAR(10) COMMENT'姓名',
JOB VARCHAR(10) COMMENT'职务',
MGR VARCHAR(50) UNIQUE COMMENT'经理编号',
HIRDATE date COMMENT'入职日期',
SAL DOUBLE(7,2) COMMENT'工资',
COMM DOUBLE(7,2) COMMENT'奖金',
DEPTNO INT(2) COMMENT'部门编号'
)
给两个表添加关联 dept表中的deptno(主键)和emp表中的DEPTNO(外键)
语法:ALTER TABLE 表1 ADD CONSTRAINT 列1_fk FOREIGN KEY(列1) REFERENCES 表2(列2)
表1的列1作为外键与表2的列2关联
ALTER TABLE emp ADD CONSTRAINT DEPTNO_fk FOREIGN
KEY(DEPTNO) REFERENCES dept(deptno)
对表结构的一些操作 Alter
复制表
CREATE TABLE 新表名 LIKE 要复制的表名:只复制结构,不复制数据
create table 表名 select * from 被复制的源表 :不仅复制结构,还复制数据
删除表
DROP TABLE 表名
修改表
添加一列:
ALTER TABLE 表名 ADD 列名 数据类型和长度 列属性
修改一列(只能修改列的属性):ALTER TABLE ... MODIFY...
ALTER TABLE 表名 MODIFY hobby VARCHAR(15) NOT NULL DEFAULT'乒乓球'
删除一列:
ALTER TABLE person DROP driver_id
修改约束类型 关键字---CONSTRAINT
添加唯一约束:
ALTER TABLE subject ADD CONSTRAINT subject_name_unique
UNIQUE (subject_name)
修改默认值:
ALTER TABLE USER ALTER age SET DEFAULT 20
修改表名
方法一:rename table 旧表名 to 新表名
方法二:alter table 旧表名 rename 新表名