数据库练习题

一.学生选课系统,主要表有:

学生基本信息表 students(学号 sid,姓名 sname,性别ssex,专业spro,出生年月sbirthday),

选课表courses_selection(学号sid,课程号cid,分数score),

课程表courses(课程号cid,课程名cname,所属专业professional,学分credits)

建立表和数据库,随后执行下面几个SQL语句

1.查询出所有选择SQL课程的学生学号,姓名和专业。

SELECT s.学号, s.姓名, s.专业
FROM students s JOIN courses_selection cs ON s.学号 = cs.学号
JOIN courses c ON cs.课程号 = c.课程号
WHERE c.课程名 = 'SQL';

2.删除所有选择数学的同学的选课记录

DELETE FROM courses_selection WHERE 课程号 IN 
(SELECT 课程号 FROM courses WHERE 课程名 = '数学');
 

3.查询有哪些课程没有被任何同学报选

SELECT 课程号, 课程名
FROM courses 
WHERE 课程号 NOT IN (SELECT 课程号 FROM courses_selection);

二.建立一个通讯录数据库TXLSJK,要求有以下三个表:

lxrenb(联系人表)其字段为(联系人编号,姓名,联系电话,家庭住址)

thjlb(通话记录表)其字段为(通话记录编号,联系人编号,通话开始时间,通知结束时间,通话类别,通话状态)

dxjlb(短信记录表)其字段为(短信记录编号,联系人编号,接发时间,短信内容,短信类别)

1.在短信记录中插入以下一条记录(1,1,'当前系统时间,你的书已经到了请速来领取',1)

INSERT INTO dxjlb (短信记录编号, 联系人编号, 接发时间, 短信内容, 短信类别)
VALUES (1, 1, NOW(), '当前系统时间,你的书已经到了请速来领取', 1);

2.更新联系人编号为4的联系人电话为13938801001

UPDATE lxrenb SET 联系电话='13938801001' WHERE 联系人编号=4;

3.依据联系人表和通话记录表建立视图:v_lxren_thjlb(联系人编号,姓名,通话类别,通话状态)

CREATE VIEW v_lxren_thjlb AS 
SELECT l.联系人编号, l.姓名, t.通话类别, t.通话状态
FROM lxrenb AS l JOIN thjlb AS t ON l.联系人编号 = t.联系人编号;
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值