资源描述:
《实验三基本表的定义、删除与修改》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验三基本表的定义、删除与修改一、实验目的:熟练掌握基本表的定义、删除与修改,为后继学习作准备。二、实验属性(验证性)1.了解并掌握SQL查询分析器及企业管理器的使用;2.掌握基本表的定义、删除与修改。三、实验仪器设备及器材1.安装有windows操作系统计算机。2.安装有Oracle11g和SQLServer的计算机。3.安装有VisualStudio.net和Java编译器(eclipse、Netbean等)的编译器。4.计算机具备网络环境。四、实验要求(预习、实验前、实验中、实验后等要求)1.预
2、习教材第三章,熟悉SQL语句。2.熟悉.net、Java或PowerBuilder、Delphi开发环境。3.能够熟练掌握.net、Java或PowerBuilder、Delphi环境下的数据库的编程。五、实验原理SQL语言应用。六、实验步骤:(1) 启动Oracle的SQLDeveloper或者SQLPlus,或者SQLServer查询分析器;(2) 对于Oracle11g的SQLPlus需要进行登录,对于Oracle11g的SQLDeveloper需要进行建立连接。如果选择SQL SERVER查询
3、分析器,需要选择数据库;(3)验证如下例子;1熟悉SQLServer数据库服务器1.1熟悉SQLServer数据库服务器环境,熟练掌握数据字典。1.2从网上下载数据库文件(.MDL、.LDF),进行数据库附加操作。并在操作系统下将数据库数据文件(.MDL、.LDF)拷贝到U盘上。1.3从网上下载数据库数据(.XLS格式),将数据导入到数据库。并进行导出(导出格式大于三种)。3.4建立数据库登录用户。2、熟悉Oracle数据库服务器2.1熟悉Oracle数据库服务器环境,熟练掌握数据字典。2.2熟练掌握
4、SQLPLUS的使用。3.3熟练掌握SQLDeveloper的使用。3.4本实验可以使用SQLPLUS也可以使用SQLDeveloper。2定义基本表(Create)先画出中原工学院学生选课ER图,在学生选课系统中一名学生可以选修多门课程,一门课程可由多名学生选修,一名学生选修一门课程参加考试就有一个成绩。将ER图转换为逻辑模型并进行一下操作。1.建立学生表Student,每个属性名的意义为Sno-学号、Sname-姓名、Ssex-性别、Sage-年龄、Sdept-所在系。这里要求Sno和Sname不
5、能为空值,且取值唯一。Sno为主码。创建学生表createtablesystem.Student1(Snochar(9)PRIMARYKEY,Snamechar(20)UNIQUE,Ssexchar(2),SageSMALLINT,Sdeptchar(20));2.建立课程表Course,其属性名意义分别为Cno-课程号,Cname-课程名,Cpno-先修课程号,Credit-学分。Cno为主码。createtablesystem.Course1(Cnochar(4)PRIMARYKEY,Cnamec
6、har(40),Cpnochar(4),CcreditSMALLINT,FOREIGNKEY(Cpno)REFERENCESsystem.Course1(Cno));3.建立成绩表SC。其中的属性名意义分别为Sno-学号,Cno-课程号和Grade-考试成绩。Sno和Cno为主码,Sno和Cno分别为外码。createtablesystem.SC1(Snochar(9),Cnochar(4),GradeSMALLINT,PRIMARYKEY(Sno,Cno),FOREIGNKEY(Sno)REFERE
7、NCESsystem.Student1(Sno),FOREIGNKEY(Cno)REFERENCESsystem.Course1(Cno));3修改基本表(Alter)1.向基本表Student中增加“入学时间”属性列,其属性名为RegisterDate,数据类型为DATE型。Altertablesystem.student1Add(RegisterDatedate);2.删除Student表的属性列RegisterDate。Altertablesystem.student1DropcolumnReg
8、isterDatecascadeconstraints;3.将Sage(年龄)的数据类型改为SMALLINT型。Altertablesystem.student1Modofysagesmallint;//要缩小精度,该列值必须为空4.将Student表的属性列RegisterDate名修改为RegDate,其它不变。Altertablesystem.student1RenamecolumnRegisterDatetoRegDate;5.增加Sname(姓