ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:498.21KB ,
资源ID:15764820      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/15764820.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库实验报告之教学管理建表10p文档格式.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库实验报告之教学管理建表10p文档格式.docx

1、利用Microsoft SQL Server2000 Transact-SQL语句在“教学管理”数据库上创建“课程信息”、“教学任务”、“教师档案”、“学生档案”、“学生成绩”共6张表。其中,重点主要放在各张表的逻辑结构设计上。“课程信息”表用来反映课程的基本信息,包括课程名称、课程类别、学分、学时等,“教师档案”表和“学生成绩”表记录了教师和学生的基本情况;“教学任务”表可以看出某一课程是由哪位教师讲授,以及该门课程的开课年度和学期,通过这张表可以看出课程和任课老师之间的对应关系;“学生选课”表给出了学生和课程之间的关系,可以看出某一个学生修了那些课程,某一课程有哪些学生选修;“学生成绩”表

2、则给出了学生成绩的计算方法,并显示了最终成绩。通过这6张表,可以实现对教学任务的简单管理。四、 实验步骤1、在“教学管理”数据库中创建6张表2、在已经建立的数据库中创建修改表结构3、用查询分析器创建表的索引4、了解表与表之间的逻辑依赖关系五、 实验结果与实验分析(一)创建表学生档案表试验教程中有,这里不指出其中的错误。1.创建“教师档案”表点击运行之后,对“教学管理”数据库进行更新之后,发现数据库的用户表里面没有出现“教师档案”表,又看了下实验书才知道忘记了在这个地方指定数据库了。2.创建“课程信息”表原来是我把SQL当成是C语言了,将最后一句改成“学时%8=0”之后,又发现了新的错误:根据提

3、示,将real后面的“(4)”删除之后,“课程信息”表创建成功!3.创建的是“教学任务”表:看了很久没看出毛病来,决定跟之前写过的SQL文件比对一下,终于发现自己的错误了!Check语句不合法。应该改成“学期 int check(学期 in(1,2)”就OK啦。4.创建“学生成绩”表:平时成绩和期末成绩都是要精确到小数点后一位,而且对于后面“总成绩 = 平时成绩*0.3 + 期末成绩*0.7”我不是很明白要怎么写。在XX看了一些,发现有跟我的问题差不多的,遂赶紧借鉴:这里的平时成绩、期末成绩、总成绩都不能按照实验书里面写的用real型,因为real型无法在定义中限制其位数,float和deci

4、mal型就可以,因此这里三个字段的类型全部应用该类型“decimal(3,1)”指有效位4位,小数点后一位。解决了小数点的问题之后,在定义的时候不能应用另外的一列,那将要怎么来实现“总成绩 = 平时成绩*0.3 + 期末成绩*0.7”呢?翻了下书,查找了关于完整性的说明,发现可以利用constraint来解决这个问题!按照书上的说法,修改如下:成功之后,就要建立学生选课表,在网上查找到有人对“课程ID”定义如下之后,我意识到自己之前做的有关“课程ID”的表都出现了一些错误这里学生选课的(课程ID)是课程信息表中课程ID的外码,因为之前在课程信息表建立是这样子的:造成两者之间长度不同。我觉得在预

5、习实验教材的时候,有一个地方可以修改表的结构的,于是用企业管理器找到“课程信息”表中的“课程ID”试图从这里面进行修改:但是修改之后刷新数据库,这个问题仍然存在!XX问问有类似的问题,网友解答如下:因此我只能将原来的表删除,重新建立新的表可以修改的,只是限于不同的约束不能修改。缺省约束就可以修改,并且不会出现错误。主键约束、外键约束、唯一约束、检查约束好像不能直接修改最要原因是如果你要修改的这些约束所关系的表已经有数据,你修改的时候数据库会自动检索,约束一旦改变表数据会出现不符合。在oracle里面你如果直接用modify以上的约束将会出现SQL command not properly en

6、ded(SQL命令未正确结束)。要修改以上的关系可以在确定数据表数据符合的情况下使用SQL SERVER的企业管理器工具修改以上关系。(2)、修改表所有的表建立成功之后,接下来的任务就是修改表了。主要是按照试验教程一步一步地做。1.修改字段的“学生档案”表中“姓名”的数据类型varchar(16)成varchar(8);2.为“学生成绩”表添加一个新的字段“总成绩”,类型是real,默认是NULL:列名重复了,那么就改成,把问题解决了。3.添加字段的取值范围(三)、创建索引完全是照搬书上面的例子的,不过由于我的粗心,还是有错误:仔细一看,马上就发现了问题了!原是少了“index”!(4)、创建

7、关系图我打开我的关系图的窗口,发现我建立起来的表和教程上面写的差别很大!例如“学生选课”表的码是由“学号”和“课程ID”组成的,我在创建表的时候没有注意到,直接将学号设为主键,同样的错误还出现在“教学任务”和“学生成绩”这两张表上面!而这几张表又密切联系,不是修修补补就能够解决问题的!于是最后我决定删除原来的表,重新再创建新表!由于之前创建表的SQL文本我都有保存下来,加上对建表逐渐熟悉,重新建表已不是很难的事情了!几分钟就搞定了!最后的关系图如下:六、 心得体会1.创建表很重要,但是更加重要的是要清楚表与表之间的逻辑关系,只有理清了表的逻辑关系,才不容易造成要删除旧表重新建立表这样大出血的事情!还好我的表里面都还没有插入数据,修改起来比较方便。2.对于一些重要的SQL文件,应该保存起来做备份,能够帮助后面的学习,有时候总是会犯一些语法错误,看自己之前写的语句,修改起来更加方便快捷。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1