资源描述:
《3表和表数据的操作[1]》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实训三表和表数据的操作一、实训目的1.掌握使用企业管理器和T-SQL语句创建表的技能与方法,了解约束、默认和规则的定义;2.理解数据完整性的意义,了解使用约束、默认和规则的意义;3.掌握用户自定义数据类型的定义及使用方法;4.掌握使用企业管理器和T—SQL语句表修改、删除表的操作技能和方法;5.掌握表记录数据的插入、修改、删除的基本操作技能和方法。二、实训要求1.实训前做好上机实训的准备,针对实训内容,认真复习与本次实训有关的知识,完成实训内容的预习准备工作;2.能认真独立完成实训内容;3.实训后做好实训总结,根据实训情况完成总结报告。三、实训
2、学时2学时四、实训项目1.使用企业管理器,创建用户自定义数据类型:名称为“unittype”,数据类型为varchar,长度为60,允许为空。2.使用企业管理器,在数据库READBOOK中创建如下book表,表结构如下:(注:要求表字段取英文名,unittype是用户自定义数据类型。)列名(英文名)列文(中文名)数据类型长度允许空值说明bookid书号int4´主键bookname书名char40´publish出版社unittype60Öpubdate出版日期datetime8Ö默认值:系统日期price单价decimal精度7,小数位数2位
3、Ö约束:单价>0;默认值:0author编著unittype60Öremarks备注text16Ö3.用T-SQL语句在上述数据库中创建reader表,表结构如下:(注:要求表字段取英文名)列名(英文名)列文(中文名)数据类型长度允许空值说明readerid读者号char5´主键readername姓名char8´sex性别char2Ö默认值:“男”;约束:只能填“男”或“女”birthday出生日期datetime8Öunit单位unittype60Öcreatetablereader(readeridchar(5)primarykey,´r
4、eadernamechar(8)notnull,sexchar(2)null,birthdaydatetimenull,Öunitunittypenull)用T-SQL语句在book表中插入列(版次,tinyint,1,null)。altertablebookadd版次tinyintnull1.用T-SQL语句将book表中列bookid的类型改为char型,长度为10。2.altertablebook3.altercolumn书号char(10)4.5.用T-SQL语句将book表中列price的类型改为money。6.altertableb
5、ook7.altercolumn单价money8.用T-SQL语句对表book完成如下操作:(1)插入记录:书号书名出版社tp00000120软件自动化测试:引入、管理与实施电子工业出版社(书号,书名,出版社)values('tp00000120','软件自动化测试;引入、管理与实施','电子工业出版社')(2)将所有出版日期在2001-01-01以前的书单价打9折。updatebookset单价=单价*0.9where出版日期<'20110101'(3)将出版日期在1990-01-01以前的书的记录信息删除。9、在“学生成绩管理”数据库中建立
6、XSQK、XSCJ、XSKC三张表,要求在“企业管理器”中建立XSQK表,用SQL语句建立XSCJ、XSKC表,表结构如下(结构中的说明部分,本次实训暂不考虑)。学生情况表(XSQK)结构列名数据类型长度允许空值说明系别Char10√班级Char12√专业Varchar30√学号Char8×主键姓名Char8×性别Char2√默认值:男出生年月Smalldatetime4√总学分Tinyint1√备注Text16√CREATEtablexsqk2(系别Char(10)null,班级Char(12)null,专业Varchar(30)null,学
7、号Char(8)primarykey,姓名Char(8)notnull,性别Char(2)notnull,出生年月Smalldatetimenull,总学分Tinyintnull,备注Textnull,)学生课程表(XSKC)结构列名数据类型长度允许空值说明课程号Char3×主键altertableXSKCaddconstraintpk_yuprimarykeyclustered(课程号)课程名Char16×开课学期Tinyint1×规则:1~8createrule开课学期as@开课学期in('开课学期>1and开课学期<8')学时Tinyin
8、t1×学分Tinyint1√学生成绩表(XSCJ)结构列名数据类型长度允许空值说明学号Char8×主键课程号Char3×主键成绩Tinyint1√学分