- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
附录C数据库上机实验讲述
附录C 上机实验
C.1 第4章上机实验
----------------------陈宇超,仅供参考------------------------------
下列实验均使用SQL Server 的SSMS工具实现。
1.用图形化方法创建符合如下条件的数据库(创建数据库的方法可参见本书附录A):
数据库名为:学生数据库
主要数据文件的逻辑文件名为:Students_data,存放在D:\Data文件夹下(若D:盘中无此文件夹,请先建立此文件夹,然后再创建数据库。),初始大小为:5MB,增长方式为自动增长,每次增加1MB。
日志文件的逻辑文件名字为:Students_log,也存放在D:\Data文件夹下,初始大小为:2MB,增长方式为自动增长,每次增加10%。
2.选用已建立的“学生数据库”,写出创建满足表C-1到4-4条件的表的SQL语句,并执行所写代码。(注:“说明”部分不作为表定义内容)
表C-1 Student表结构
列名 说明 数据类型 约束 Sno 学号 普通编码定长字符串,长度为7 主键 Sname 姓名 普通编码定长字符串,长度为10 非空 Ssex 性别 普通编码定长字符串,长度为2 取值范围:{男,女} Sage 年龄 微整型(tinyint) 取值范围:15-45 Sdept 所在系 普通编码不定长字符串,长度为20 默认值为“计算机系” Sid 身份证号 普通编码定长字符串,长度为10 取值不重 Sdate 入学日期 日期 默认为系统当前日期 表C-2 Course表结构
列名 说明 数据类型 约束 Cno 课程号 普通编码定长字符串,长度为10 主键 Cname 课程名 普通编码不定长字符串,长度为20 非空 Credit 学时数 整型 取值大于0 Semester 学分 小整型 表C-3 SC表结构
列名 说明 数据类型 约束 Sno 学号 普通编码定长字符串,长度为7 主键,引用Student的外键 Cno 课程号 普通编码定长字符串,长度为10 主键,引用Course的外键 Grade 成绩 小整型 取值范围为0-100 表C-4 Teacher表结构
列名 说明 数据类型 约束 Tno 教师号 普通编码定长字符串,长度为8 非空 Tname 教师名 普通编码定长字符串,长度为10 非空 Salary 工资 定点小数,小数点前4位,小数点后2位
3. 写出实现如下功能的SQL语句,并执行所写代码,查看执行结果。
在Teacher表中添加一个职称列,列名为:Title,类型为nchar(4)。
ALTER TABLE Teacher ADD Title VARCHAR(4)
为Teacher表中的Title列增加取值范围约束,取值范围为:{教授,副教授,讲师}。
ALTER TABLE Teacher ADD CONSTRAINT Title CHECK(Title IN(教授,副教授,讲师))
将Course表中Credit列的类型改为:tinyint。
注意:这里首先需要先删除Credit的约束,修改完数据类型后再重新添加约束项
ALTER TABLE Course DROP CONSTRAINT CK__Course__Credit__2B3F6F97
ALTER TABLE Course ALTER COLUMN Credit TINYINT
ALTER TABLE Course ADD CONSTRAINT Credit CHECK (Credit0)
删除Student表中的Sid和Sdate列。
注意:这里首先需要先删除约束
ALTER TABLE Student DROP CONSTRAINT UQ__Student__CA1E5D79B3204FCF
ALTER TABLE Student DROP CONSTRAINT DF__Student__Sdate__3B75D760
ALTER TABLE Student DROP COLUMN Sdate,Sid
为Teacher表添加主键约束,其主键为:Tno。
ALTER TABLE Teacher ADD PRIMARY KEY(Tno)
※建立数据库主要文件和日志文件
※我们可以看到D盘增加了主要数据文件.mdf和日志文件.ldf
※给students_data建立表格
create table Student(
Sno char(7),
Sname char(10) not null,
Ssex char(2) check( Ssex=男 or Ssex=女 ) ,
Sage tinyint check(Sage 14 AND Sage46),
Sdep
原创力文档


文档评论(0)