1、建立class表

create table class(

Classno char(6) primary key,

Classname varchar(30),

Institute varchar(30),

Grade smallint,

Classnum tinyint

);


2、建立student表

create table student(

studentno char(7),

studentname varchar(20),

sex char(2),

birthday datetime,

native varchar(20),

nation varchar(30),

classno char(6)

 );


增加主键studentno

> alter table student add constraint primary key student(studentno);


增加外键(外键链接的主表的属性必须设立主键)

alter table student add constraint fk_student_class

foreign key student(classno) references class(classno);


或者可以直接在建表时直接建立外键


3、建立course表

create table course(

courseno char(3),

coursename varchar(30),

credithour float(10,2),

coursehour int,

priorcourse char(3)

);


设置courseno 为主键

> alter table course add constraint primary key course(courseno);


设置表内外键

alter table course add constraint fk_courseno

foreign key course(priorcourse) references course(courseno);


4、建立score表

create table score(

studentno char(7),

courseno char(3),

score float(10,2)

);


建立两个外键

alter table score add constraint fk_score_student

foreign key score(studentno) references student(studentno);


alter table score add constraint fk_score_courseno

foreign key score(courseno) references course(courseno);


• 查看表的字段信息:desc 表名;


• 查看表的所有信息:show create table 表名;


• 添加主键约束:alter table 表名 add constraint 主键 (形如:PK_表名) primary key 表名(主键字段);


• 添加外键约束:alter table 从表 add constraint 外键(形如:FK_从表_主表) foreign key 从表(外键字段) references 主表(主键字段);


• 删除主键约束:alter table 表名 drop primary key;


• 删除外键约束:alter table 表名 drop foreign key 外键(区分大小写);


• 修改表名:alter table t_book rename to bbb;


• 添加列:alter table 表名 add column 列名 varchar(30);


• 删除列:alter table 表名 drop column 列名;


• 修改列名MySQL: alter table bbb change nnnnn hh int;


• 修改列名SQLServer:exec sp_rename't_student.name','nn','column';


• 修改列名Oracle:alter table bbb rename column nnnnn to hh int;


• 修改列属性:alter table t_book modify name varchar(22);