数据库实验报告(实验一)_第1页
数据库实验报告(实验一)_第2页
数据库实验报告(实验一)_第3页
数据库实验报告(实验一)_第4页
数据库实验报告(实验一)_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

沈阳工程学院学生实验报告(课程名称:数据库原理及应用)实验题目:数据库模式设计班级软本112学号2011417216姓名石金栋日期2012.10.16地点F座606指导教师孙宪丽祝世东一、实验目的熟练掌握采用SQL命令建立数据库表、索引和视图的方法.二、实验环境Oracle10g数据库系统.三、实验内容与要求(一)实验内容建立学生数据库模式学生表:student(sno学号,sname姓名,ssex性别,sage年龄,sdept所在系)其中:sno长度为4的字符串,为主码;sname长度为8的字符串;ssex长度为2的字符串,其值只取男、女;sage短整数,其值在0-150之间;sdept长度为10的字符串.建立课程数据库模式课程表:course(cno课程号,cname课程名,ccredit学分)其中:cno长度为4的字符串,为主码cname长度为10的字符串,不能为空,且不能有重复课程名;ccredit短整数.建立选课数据库模式.选课表:sc(sno学号,cno课程号,grade成绩)其中:sno长度为4的字符串,和student表sno外键关联,且级联删除cno长度为4的字符串,course表cno外键关联,grade短整数,值或空或为0—100之间,(sno,cno)联合作主码.(二)实验要求在Oracle10g的iSQLPlus中完成下列操作:创建上述三个表.向Student表增加"入学时间"列(列名为Scome,日期型).将年龄的数据类型改为半字长整数.为Student中sname添加列级完整性约束,不能为空.删除Student中sname列级完整性约束.为SC建立按学号升序和课程号降序建立唯一索引.⑺在表student的sname字段建立一个升序索引.删除在表student的sname字段建立的索引.给student表增加一个地址(address)属性.给student表删除地址(address)属性.建立视图view1,要求有sno,sname,cname,grade四个字段.建立视图view2,要求有sno,ssex,sage三个字段.四、实验过程及结果分析(1)创建三个表1.建立student表createtablestudent(snochar(4)primarykey,snamechar(8),ssexchar(2)check(ssexin('男','女')),sagesmalintcheck(sage>=0andsage<=150),sdeptchar(10),);ERRORatline6:ORA-00904::invalididentifier分析:数据类型错误,应为smallint,且最后一行不能用逗号.改正:createtablestudent(snochar(4)primarykey,snamechar(8),ssexchar(2)check(ssexin('男','女')),sagesmallintcheck(sage>=0andsage<=150),sdeptchar(10));实验结果如图1.1所示NameNull?TypeSNONOTNULLCHAR(4)SNAMECHAR(8)SSEXCHAR(2)SAGENUMBER印)SDEPTCHAR(10)图1.12.建立course表

createtablecourse(cnochar(4)primarykey,cnamechar(8)uniqueandnotnull,ccreditsmallint);ERRORatline3:ORA-00907:missingrightparenthesis分析:notnull,unique不能用and连接,用unique(cname)表示不能为空.改正:createtablecourse(cnochar(4)primarykey,cnamechar(8)notnull,unique(cname),ccreditsmallint);实验结果如图1.2所示NameNull?TypeCNONOTNULLCHAR(4)CNAMENOTNULLCHAR(8)CCREDITNUM日ER。日)图1.33.建立sc表createtablesc(snochar(4),cnochar(4),gradesmallintcheck(grade=0orgrade>=0andgrade<=150),primarykey(sno,cno),foreignkey(sno)referencesstudent(sname)ondeletecascade,foreignkey(cno)referencescourse(cname));ERRORatline6:ORA-02270:nomatchinguniqueorprimarykeyforthiscolumn-list分析:被参照表的参照列必须是主码改正:createtablesc(snochar(4),cnochar(4),gradesmallintcheck(grade=0orgrade>=0andgrade<=150),primarykey(sno,cno),foreignkey(sno)referencesstudent(sno)ondeletecascade,foreignkey(cno)referencescourse(cno));实验结果如图1.3所示图1.3(2)altertablestudentaddscomedate;实验结果如图1.4所示NameNull?TypeSNONOTNULLCHAR⑷SNAMECHAR(8)SSEXCHAR(2)SAGENUMBER(38)SDEPTCHAR(10)SCOMEDATE图1.4(3)altertablestudentmodify(sagenumber);实验结果如图1.5所示

[NaineNull?T»peSNOHOTNULLCHAR(4|浙网ECHAR(8!SSEXCHAR|2iSAGENUMBERSDEPTCHAR(IO)SCOMEDATE图1.5(4)altertablestudentaddnotnull(sname);ERRORatline1:ORA-00904::invalididentifier分析:更改列级为空时,用modifysnamenotnull改正:altertablestudentmodify(snamenotnull);实验结果如图1.6所示NameNull?TypeSNONOTNULLCHAR(4)SNAMENOTNULLCHAR(8)SSEXCHAR⑵SAGENUMBERSDEPTCHAR(10)SCOMEDATE图1.6(5)altertablestudentdropsame;ERRORatline1:ORA-00905:missingkeyword改正:altertablestudentdropCONSTRAINTSYS_C006327CASCADE实验结果如图1.7所示图1.7(6)createuniqueindexScnoonsc(snoasc,cnodesc);实验结果如图1.8所示

素引表列列名敷据类型排序次序SNOCHAKASC"CNO"COLUMNEXPRESSIONDESC图1.8createindexstusnameonstudent(sname);实验结果如图1.9所示索引表列列名数据类型排序次摩SNAMECHARASC图1.9dropindexstusname;实验结果如图2.0所示图2.0altertablestudentaddaddress;ERRORatline1:ORA-02263:needtospecifythedatatypeforthiscolumn分析:增加属性应定义其类型,address是char型改正:altertablestudentaddaddresschar(10);实验结果如图2.1所示图2.1

altertablestudentdropaddress;ERRORatline1:ORA-00905:missingkeyword分析:删除某一属性时应级联删除,用cascade级联删除.改正:altertablestudentdrop("ADDRESS")CASCADECONSTRAINTS实验结果如图2.2所示NameNull?TypeSNONOTNULLCHAR(4)SNAMECHAR(8)SSEXCHAR(2)SAGENUMBERSDEPTCHAR(10)SCOMEDATE图2.2(11)createviewviewlasselectsno,sname,cname,gradefromstudent,course;ERRORatline2:ORA-00904:"GRADE":invalididentifier分析:建立视图时,有不同表的属性,应表明是哪个表的属性,如sc.sno.改正:createviewview1asselectstudent.sno,sname,ame,sc.gradefromstudent,course,sc;实验结果如图2.3所示MEWlRJB1121&MEW

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论