sql基本表的定义,删除与修改

sql基本表的定义,删除与修改


一 定义基本表
1. 建立一个“学生”表student

create table student(
	sno char(9) primary key,  /*列级完整性约束条件,sno是主码*/
	sname char(20) unique,  /*sname取唯一值*/
	ssex char(2),
	sage smallint,
	sdept char(20)
);

2.建立一个“课程”表course

create table course(
	cno char(4) primary key,  /*列级完整性约束条件,cno是主码*/
	cname char(40) not null,   /*列级完整性约束条件,cname不能取空值*/
	cpno char(4),  /*cpno的含义是先修课*/
	ccredit smallint,
	foreign key (cpno) references course(cno)  /*参照本表*/
	/*表级完整性约束条件,cpno是外码,被参照表是本表,被参照列是cno*/
);

3.建立一个选课表

create table course(
	cno char(4) primary key,  /*列级完整性约束条件,cno是主码*/
	cname char(40) not null,   /*列级完整性约束条件,cname不能取空值*/
	cpno char(4),  /*cpno的含义是先修课*/
	ccredit smallint,
	foreign key (cpno) references course(cno)  /*参照本表*/
	/*表级完整性约束条件,cpno是外码,被参照表是本表,被参照列是cno*/
);

二 修改基本表
1. 向student表增加“入学时间”列,其数据类型为日期型

alter table student add s_entrance date

2. 将年龄的数据类型由字符类型改为整数

alter table student alter column sage int;

3. 增加课程名称必须区唯一值的约束条件

alter table course add unique(cname);

三 修改基本表
1. 普通删除

drop table student;

2. 级联删除

drop table student cascade;
#解释:student表中的sno被sc表中的cno参照了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值