实实验验报报告告((本本科科))学号2014141442036姓名李玉波专业自动化日期2015/10/11实验题目实验一SQLServer数据库基本操作实验内容1.创建一个名称为Book的数据库,支持教材订购信息管理,要求:(1)将主数据库文件Book_Data.MDF放置在的D:\DBF文件夹中,文件大小为5MB,最大值为50MB,文件增量为2MB。(2)将事务日志文件Book_Log.LDF放置在的D:\DBF文件夹中,文件大小为5MB,最大值为100MB,文件增量为1MB。2.在上题所建数据库Book中建立5张数据表结构并分别向数据表插入记录。1)T_Teacher表:存储教师基本情况。字段名称字段说明类型定义属性限定索引关系(外键)TeacherCode教师工号Char(8)PrimaryKey√TeacherName教师姓名Varchar(20)NotNull√AcadCode所属学院Char(2)NotNull√T_Academy:AcadCodeSex性别Char(2)NotNullEnterDate入校时间DatetimeTitle职称Char(10)NotNullTelephone联系电话Varchar(40)2)T_Academy学院表:存储学院基本信息。字段名称字段说明类型定义属性限定索引关系(外键)AcadCode学院代码Char(2)PrimaryKey√AcadName学院名称Varchar(50)NotNull3)T_BookInfo表:存储教材基本信息。字段名称字段说明类型定义属性限定索引关系(外键)BookCode教材代号Char(6)PrimaryKey√BookName教材名称Varchar(40)NotNull√PublisherCode出版社Char(2)T_Publisher:PublisherCodeAuthor编写人Varchar(40)PublishDate出版日期DatetimePrice价格MoneyNotNullISBNCodeISBN号Char(20)StockNum库存量SmallintNotNull√BookSort教材类别Char(20)4)T_Publisher表:存储出版社的基本信息字段名称字段说明类型定义属性限定索引关系(外键)PublisherCode出版社代号Char(2)Primary√KeyPublisher出版社Varchar(40)Telephone联系电话Varchar(40)5)T_BookOrder表:存储教师及学生订书的基本信息字段名称字段说明类型定义属性限定索引关系(外键)BookCode教材代号Char(6)NotNull√T_BookInfo:BookCodeTeacherCode教师工号Char(8)NotNull√T_Teacher:TeacherCodeStuBookNum学生订书量SamllintNotNullTeaBookNum教师订数量SmallintNotNullOrderTime订书日期DatetimeTakeAway是否领走BitDefault0Description备注说明Text3.创建T_Teacher、T_Academy、T_BookInfo、T_Publisher和T_BookOrder5个表之间的关系如下。4.任选两个数据表插入3-5条记录(例如T_BookInfo、T_BookOrder、T_Teacher),各数据表记录如下表所示。5.将T-teacher表“TeacherName”字段的类型改为Varchar(16)。为T_BookOrder表添加约束条件,使得“StuBookNum”和“TeaBookNum”的取值都大于0;“OrderTime”大于2007年。6.练习记录数据的添加、删除和更新操作。在T_Teacher表中添加记录“01010117、黄蓉、13、女、1977-9-21、副教授、63478445”。将T_Teacher表中TeacherCode为“01010113”的记录删除;将TeacherCode为“01010116”记录的title字段内容更新为“教授”。7.在企业管理器中练习索引的创建和删除。在“TeacherName”(降序)和“AcadCode”(升序)上建立一个名称为“Name_Code”的普通索引。删除“Name_Code”索引。实验操作及截图一、问题11.创建Book数据库。2.内容截图:3.遇到问题暂无二、问题21.创建实验要求的五个表,及其索引和外键。2.创建语句:CreateTableT_Teacher(TeacherCodeChar(8)PrimaryKey,/*教师工号*/TeacherNameVarchar(20)NotNull,/*教师姓名*/AcadCodeChar(2)NotNull,/*所属学院*/SexChar(2)NotNull,/*性别*/EnterDateDatetime,/*入校时间*/TitleChar(10)NotNull,/*职称*/TelephoneVarchar(40)/*联系电话*/)CREATEINDEXT_Teacher_TeacherNameONT_Teacher(TeacherName)/*为TeacherName添加缩索引*/CREATEINDEXT_Teacher_AcadCodeONT_Teacher(AcadCode)/*为AcadCode添加缩索引*/CreateTableT_Academy(AcadCodeChar(2)PrimaryKey,/*学院代码*/AcadNameVarchar(50)NotNull/*学院名称*/)CreateTableT_BookInfo(BookCodeChar(6)PrimaryKey,/*教材代号*/BookNameVarchar(40)NotNull,/*教材名称*/PublisherCodeChar(2),/*出版社*/AuthorVarchar(40),/*编写人*/PublishDateDatetime,/*出版日期*/PriceMoneyNotNull,/*价格*/ISBNCodeChar(20),/*ISBN号*/StockNumSmallintNotNull,/*库存量*/BookSortChar(20)/*教材类别*/)CREATEINDEXT_BookInfo_BookNameONT_BookInfo(BookName)/*为BookName添加缩索引*/CREATEINDEXT_BookInfo_StockNumONT_BookInfo(StockNum)/*为StockNum添加缩索引*/CreateTableT_Publisher(PublisherCodeChar(2)PrimaryKey,/*出版社代号*/PublisherVarchar(40),/*出版社*/TelephoneVarchar(40)/*联系电话*/)CreateTableT_BookOrde(BookCodeChar(6)NotNull,/*教材代号*/TeacherCodeChar(8)NotNull,/*教师工号*/StuBookNumSmallintNotNull,/*学生订书量*/TeaBookNumSmallintNotNull,/*教师订数量*/OrderTimeDatetime,/*订书日期*/TakeAwayBitDefault0,/*是否领走*/DescriptionText/*备注说明*/)CREATEINDEXT_BookOrde_TeacherCodeONT_BookOrde(TeacherCode)/*为TeacherCode添加缩索引*//*为T_Teacher表的AcadCode列添加T_Academy表的AcadCode列的外键约束*/AlterTableT_TeacherAddConstraintFK_T_Academy_AcadCodeforeignkey(AcadCode)referencesT_Academy(AcadCode)/*为T_BookInfo表的PublisherCode列添加T_Publisher表的PublisherCode列的外键约束*/AlterTableT_BookInfoAddConstraintFK_T_Publisher_PublisherCodeforeignkey(PublisherCode)referencesT_Publisher(PublisherCode)/*为T_BookOrde表的BookCode列添加T_BookInfo表的BookCode列的外键约束*/AlterTableT_BookOrdeAddConstraintFK_T_BookInfo_BookCodeforeignkey(BookCode)referencesT_BookInfo(BookCode)/*为T_BookOrde表的TeacherCode列添加T_Teacher表的TeacherCode列的外键约束*/AlterTableT_BookOrdeAddConstraintFK_T_Teacher_AcadCodeforeignkey(TeacherCode)referencesT_Teacher(TeacherCode)3.实验截图命令已成功完成。4.遇到问题暂无三、问题31.创建5表之间的关系2.实验截图3.遇到问题暂无四、问题41.任选两个数据表插入3-5条记录2.插入数据语句1.insertintoT_Academy(AcadCode,AcadName)2.values('01','电气信息学院')3.4.insertintoT_Academy(AcadCode,AcadName)5.values('02','电子信息学院')6.7.insertintoT_Academy(AcadCode,AcadName)8.values('03','软件学院')9.10.insertintoT_Academy(AcadCode,AcadName)11.values('04','计算机学院')12.13.insertintoT_Teacher(TeacherCode,TeacherName,AcadCode,Sex,EnterDate,Title,Telephone)14.values('51031208','李歌','01','女','2003-12-8','教授','13200001111')15.16.insertintoT_Teacher(TeacherCode,TeacherName,AcadCode,Sex,EnterDate,Title,Telephone)17.values('63110513','朱杰','02','男','2011-5-13','副教授','13211112222')18.19.insertintoT_Teacher(TeacherCode,TeacherName,AcadCode,Sex,EnterDate,Title,Telephone)20.values('34150223','张佑','03','男','2015-2-23','讲师','13222223333')3.实验截图表:T_Teacher表:T_Academy4.实验问题1)插入语句中引号有英文半角要求2)录入数据时需考虑作为外键约束的表格是否录入完成五、问题51.利用语句修改表的结构2.修改语句1.DROPINDEXT_Teacher_TeacherNameONT_Teacher/*删除索引*/2.altertableT_Teacher3.altercolumnTeacherNameVarchar(16)NotNull4.CREATEINDEXT_Teacher_TeacherNameONT_Teacher(TeacherName)/*为TeacherName添加索引*/5.6.7.altertabl