SQL数据库

传统集合运算

  1. 并 差 交 笛卡尔积
    注意:笛卡尔积的元素是元组
    两个分别为n目和m目的关系R和S的笛卡尔积是一个(n+m)列的元组集合。元组的前n列是关系R的一个元组,后m列是关系S的一个元组。若R有k1个元组,S有k2个元组,则R和S的笛卡尔积有k1*k2个元组

专门的关系运算

  1. 选择、投影、连接、除
    选择的结果是若干行
    投影的结果是若干属性列
    连接

连接分为两种

  • 等值连接
    属性值相等的元组进行连接
  • 自然连接
    两个关系中进行比较的分量必须是同名的属性组,并且在结果中把重复的属性列去掉

表的基本操作

-- 建立一个学生表
create table student
(
		Sno varchar(9) primary key,
		Sname varchar(20) unique,
		Ssex varchar(2),
		Sage smallint,
		Sdept varchar(20)
);
-- 建立一个课程表
create table course
(
		Cno varchar(9) primary key,
		Cname varchar(20) not null,
		Cpno varchar(4),
		Ccredit smallint,
		foreign key(Cpno) references Course(Cno)
);
-- 建立一个选课表
create table SC
(
		Sno varchar(9),
		Cno varchar(9),
		Grade smallint,
		primary key (sno,cno),
		foreign key (sno) references student(Sno),
		foreign key (Cno) references course(Cno)	 
);
-- 向student表中添加时间列,类型为时间类型
alter table student add S_entrance date
-- 将年龄由字符型改为整数型
alter table student alter column Sage smallint
-- 增加课程名必须唯一的约束条件
alter table course add unique(Cname)
-- 删除基本表 
drop table 表名字 [restrict][cascade]

restrict:删除表的权限有限制条件,删除的表不能被其他表的约束所引用
cascade:无限制条件,删除基本表同时删除相关依赖




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值