educoder 数据库原理与应用 实验六 约束与索引

这篇博客介绍了如何使用SQL语句在数据库中添加约束和创建索引。内容包括为学生表、课程表和学生选课表的各个列添加不同类型的约束,如年龄、性别限制,外码约束以及检查约束,并且详细说明了创建唯一索引和排序索引的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据结构说明

表结构如下:

学生表:Student

字段名 类型 主码 备注
Sno char(10) Y 学号
Sname varchar(20) 姓名
Ssex char(2) 性别
Sage smallint 年龄
Sdept varchar(20) 所在系

课程表:Course

字段名 类型 主码 备注
Cno char(10) Y 课程号
Cname varchar(20) 课程名
Cpno char(10) 先行课号
Ccredit smallint 课程学分

学生选课表:SC

字段名 类型 主码 备注
Sno char(10) Y 学号
Cno char(10) Y 课程号
Grade smallint 成绩

第1关:添加约束一

任务描述

本关任务:为表中的列添加约束

相关知识

使用SQL语句中的alter table语句。
SQL语句中关键字大小写不区分。
性别用’m’表示男,’f’表示女

实验完成要求

根据代码区的提示,将SQL语句书写在对应的代码区中。
注:请务必按要求为约束命名
1、为Student表的Sage列添加约束,使其取值小于30岁(约束名:stu_chk_sage)
2、为student表的Ssex列添加约束,使其只能取值‘m’或‘f’(约束名:stu_chk_ssex)
3、为Student表的ssex列添加缺省约束,缺省值为‘m’(约束名:stu_def_ssex)

测试说明
书写查询语句后,直接测试。

sql语句
sql1:

USE CS_yx_DB
GO
SET NOCOUNT ON

-- ********** Begin ********** --
-- ********** 此处写“1、为Student表的Sage列添加约束,使其取值小于30岁(约束名:stu_chk_sage)”的SQL语句 ********** --
alter table Student add constraint stu_chk_sage check(sage<30);
-- ********** End ********** --

GO

sql2:

USE CS_yx_DB
GO
SET NOCOUNT ON

-- ********** Begin ********** --
-- ********** 此处写“2、为student表的Ssex列添加约束,使其只
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xingcheng--dp

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值