数据库原理及应用实验指导书.doc
《数据库原理及应用实验指导书.doc》由会员分享,可在线阅读,更多相关《数据库原理及应用实验指导书.doc(26页珍藏版)》请在三一办公上搜索。
1、数据库原理及应用编撰闽江学院计算机实验教学中心印制二零零五年 九 月实验一 表的创建与修改【实验目的】1. 学会使用企业管理器创建和修改表结构 2. 学会使用查询分析器 3. 学会使用SQL语句创建和修改表结构【实验内容】1. 使用企业管理器建立和修改班级表、成绩表 2. 使用查询分析器建立和修改课程表、学生表【实验准备】1. 复习与本次实验内容相关知识2. 对本次实验中要求自己完成的部分做好准备 【实验步骤】1. 用企业管理器建立学生表 o 启动企业管理器(使用上次实验建立的帐号注册连接服务器) o 展开服务器(下图中(LOCAL)-展开数据库-展开自己学号所对应的数据库(下图中的51022
2、01101在实验中应为你的学号)。 o 在表上右击,在快捷菜单中单击新建表.,如下图所示 oo 在表结构窗口内建立如下图所示的班级表(ID含义为班号,NAME含义为班名,DEPARTMENT含义为所在 系,各字段类型及是否允许为空按图中设置),如下图所示,左侧三角形标志为当前列,下方的列属性即为该列的。 oo 在第一行上右击,在弹出的快捷菜单中单击设置主键,如下图所示, 则ID字段被设置为主键,在ID列属性中将标识改为:是,则ID字段在新增行时,从标识种子(当前为1)开始,逐行以标识递增量(当前为1)自动递增(即此列在新增行时不用输入数据而自动生成)。 oo 要插入和删除列,请使用类似方法-在
3、快捷菜单中使用插入列(M)和删除列(D)。 o 并在工具栏上单击保存图标,在弹出的保存对话框中输入U_CLASSES,单击确定,然后关闭表结构设计窗口 o 依照上面设计学生表的步骤,设计如下图所示的成绩表(STUDENT_ID含义为学号,COURSE_ID含义为课程号,SCORE为成绩,各字段类型 和是否允许为空,按图中设置),表名保存为U_SCORES(注意设置主键时,先按住Shift,分别单击第一、第二行 左侧-选中这两行,再右击,在快捷菜单单击中设置主键-该操作可设置和取消主键)。 oo 关闭表设计窗口。 2. 用企业管理器修改表 o 如果要修改表,请展开你的数据库,单击其下的表 o 在
4、右边的窗格中,找到要修改的表,在其上右击 o 在弹出的快捷菜单中,单击设计表(S)则打找开表设计窗口进行修改,具体如下图所示 o3. 用SQL语句建立班级表、课程表 o 依照启动企业管理器的方法,启动查询分析器,在连接到SQL Server对话框中,设置SQL Server(S)为local,选择SQL Server身份验证,在登录名中输入你的学号,密码中输入你的密码,单击确定。 oo 启动查询分析器后,注意右上角当前数据库处是否为你的数据库(如果不是,说明登录的名称有问题,或该登录的默认数据库设置不正确).若不是请重新选择.按照下图输入SQL语句(蓝色和黑色部分,其中第一条为建表语句,第二条
5、为设置主键的语句)建立课程表(U_COURSES)(其中ID表示课程编号,该字段自动 递增,COURSE为课程名称),单击分析查询(按钮)按钮,检查语句的正确性。如果检查正确,单击分析查询按钮的右边的执行按钮(右向的三角形按钮)执行(或按F5). oo 右击左侧数据库图标,在快捷菜单击刷新.展开数据库(你的学号),再展开用户表,查看是否已存在班级表(U_COURSES),如下图所示。 oo 依照上述方法输入SQL语句(技巧:在查询命令窗口内,要执行的命令可先选中,再执行,则未选中的语句不会执行)建立学生表(U_STUDENTS),表结构如下: 序号字段类型(长度)主键含义1IDchar(10)
6、是学号2NAMEvarchar(16)姓名3CLASS_IDtinyint所在班级编号4. 用SQL语句修改表结构 o 用SQL语句,给课程表添加一个学时字段(字段名:period,类型:tinyint)。 ALTER TABLE dbo.U_COURSES ADD period tinyint o 用SQL语句,给课程表添加一个学分字段(字段名:CREDIT,类型:tinyint)。 请参照上面SQL命令自行进行 o 用SQL语句,删除课程表学时字段(字段名:period)。 ALTER TABLE dbo.U_COURSES DROP COLUMN period o 用SQL语句,修改成绩
7、表,使SCORE字段类型为tinyint。 ALTER TABLE dbo.U_SCORES ALTER COLUMN SCORE tinyint 5. 用企业管理器检查各表,如果和上面要求的相同,则你的实验就完成了实验2 数据库的更新实验一 实验目的本实验的目的是要求学生熟练掌握使用SQL 和通过SQL Server企业管理器向数据库输入数据、修改数据和删除数据的操作。二 相关知识SQL Server提供了很多方法更新表中数据。以插入记录为例,可以使用INSERT语句、VALUES子句将特定值集合插入一行;可以使用数据库接口API(ADO、OLE DB、ODBC和DB-Library)中的函
8、数进行数据插入等。本实验主要掌握INSERT、UPDATE和DELETE语句的基本用法。1 插入操作,其语句的一般格式为INSERTINTO table_or_view (colum_list)VALUES (date_values);此语句是使date_values作为一行数据记录插入已命名的表或视图table_or_view中。Column_list是由逗号分隔的table_or_view的列名列表,用来指定为其提供数据的列。如果没有指定column_list,表或视图中的所有列都将接收数据。如果column_list没有为表或视图中的所有列命名,将在列表中没有命名的任何列中插入一个NUL
9、L值(或者在默认情况下为这些列定义的默认值)。在列的列表中没有指定的所有列都必须允许NULL值或者指定的默认值。否则SQL Server将返回一个错误。2 修改操作语句的一般格式为UPDATE 表名SET =,=where ;其功能是修改指定表中满足WHERE子句条件的元组。其中SET子句用于指定修改方法,即用的值取代相应的属性列值。如果省略WHERE子句,则表示要修改表中的所有元组。3 删除语句的一般格式为DELETE FROM WHERE ;其功能是从指定表中删除满足WHERE子句条件的所有元组。如果省略WHERE子句,则表示要删除表中的所有元组,但表的定义仍在字典中。三 实验内容1 通过
10、企业管理器,在学生选课数据库的学生、课程和选课3个表中各输入10条记录。要求记录不仅满足数据约束要求,还要有表间关联的记录。2 具体完成以下例题。将它们转换为SQL语句表示,在学生选课库中实现其数据更新操作。例1 将一新学生记录(学号:95050;姓名:陈冬;性别:男;年龄:18;所在系:计算机科学系)插入学生表中。例2 插入一条选课记录(95020,C1)。例3 对每一个系,求学生的平均年龄,并把结果存入数据库。对于这道题,首先要在数据库中建立一个有两个属性列的新表,其中一列存放系名,另一列存放相应系的学生平均年龄。 CREATE TABLE Deptage(所在系 CHAR(20),平均年
11、龄SMALLINT); 然后对数据库的学生表按所在系分组求平均年龄,再把所在系和平均年龄存入新表中。例4 将学生95001的年龄改为22岁。例5 将所有学生的年龄增加一岁。 例6 将计算机科学系全体学生的成绩置零。例7 删除学号为95006的学生记录例8 删除所有的学生选课记录例9 删除计算机科学系所有学生的选课记录四 实验步骤 将查询需求用SQL语言表示;在SQL Server查询分析器的输入区中输入SQL查询语句;设置查询分析器的结果区为Standard Execute(标准执行)或Execute to Grid(网格执行)方式;发布执行命令,并在结果区中查看查询结果;如果结果不正确,要进
12、行修改,直到正确为止。 实验3 数据库查询实验一 实验目的本实验的目的是使学生掌握SQL Server查询分析器的使用方法,加深对SQL和SQL语言的查询语句的理解。熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。二 实验内容1 简单查询操作。该实验包括投影、选择条件表达,数据排序,使用临时表等。具体完成以下题目,将它们转换为SQL语句表示,在学生选课数据库中实现其数据查询操作。1 求数学系学生的学号和姓名2 求选修了课程的学生学号3 求选修课程号为C1的学生号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同按学号的升序排列。4 求选修课程号为C1且成绩在8090之间的学生学
13、号和成绩,并成绩乘以0.8输出。5 求数学系或计算机系姓张的学生的信息。6 求缺少了成绩的学生的学号和课程号2 连接查询操作。该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。7 查询每个学生的情况以及他所选修的课程8 求学生的学号、姓名、选修的课程及成绩9 求选修课程号为C1且成绩在90以上的学生学号、姓名和成绩10 查询每一门课程的间接先行课(即先行课的先行课)3 .嵌套查询操作。实验的主要内容是:在SQL Server查询分析器中使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。具体完成以下例题。将它们用SQL语句表示,在学
14、生选课中实现其数据嵌套查询操作。例1 求选修了高等数学的学号和姓名例2 求C1课程的成绩高于刘晨的学生学号和成绩例3 求其他系中比计算机系某一学生年龄小的学生(即年龄小于计算机系年龄最大者的学生)例4 求其他系中比计算机系学生年龄都小的学生例5 求选修了C2课程的学生姓名例6 求没有选修C2课程的学生姓名例7 查询选修了全部课程的学生姓名例8 求至少选修了学号为“95002”的学生所选修全部课程的学生学号和姓名4分组、统计、计算和集合的操作1) 分组查询实验。该实验包括分组条件表达、选择组条件表达的方法。2) 使用函数查询的实验。该实验包括统计函数和分组统计函数的使用方法。3) 集合查询实验。
15、该实验并操作UNION、交操作INTERSECT和差操作MINUS的实现方法。具体完成以下例题,将它们用SQL语句表示,在学生选课中实现其数据查询操作。例1 求学生的总人数例2 求选修了课程的学生人数例3 求课程和选修了该课程的学生人数例4 求选修超过3门课的学生学号例5 查询计算机科学系的学生及年龄不大于19岁的学生例6 查询计算机科学系的学生与年龄不大于19岁的学生的交集例7 查询计算机科学系的学生与年龄不大于19岁的学生的差集例8 查询选修课程C1的学生集合与选修课程C2的学生集合的交集例9 查询选修课程C1的学生集合与选修课程C2的学生集合的差集三 实验方法将查询需求用SQL语言表示;
16、在SQL Server查询分析器的输入区中输入SQL查询语句;设置查询分析器的结果区为Standard Execute(标准执行)或Execute to Grid(网格执行)方式;发布执行命令,并在结果区中查看查询结果;如果结果不正确,要进行修改,直到正确为止。实验4 数据库视图实验一 实验目的本实验的目的是使学生掌握视图的定义与维护操作,加深对视图在关系数据库中的作用的理解。 二 相关知识视图是根据子模式建立的虚拟表。一个视图可以由一个表构造,也可以由多个表构造。利用企业管理器和视图创建向导进行创建,查看和修改视图就如同对表的操作一样,非常容易。三 实验内容本实验的主要内容是:1) 创建和删
17、除视图2) 查询和更新视图具体完成以下例题。例1 建立信息系学生的视图例2 建立信息系学生的视图,并要求进行修改和插入操作时仍须保证该视图只有信息系的学生。例3 建立信息系选修了C1号课程的学生视图例4 建立信息系选修了C1号课程且成绩在90分以上的学生视图例5 定义一个反映学生出生年份的视图四 实验步骤1 创建视图下面利用了SQL Server中提供的视图创建向导,来实现例3(建立信息系选修了1号课程的学生视图)。1) 打开企业管理器窗口,确认服务器,打开数据库文件夹,选中新视图所在的数据库(此例为学生选课数据库)。2) 选择菜单:工具|向导3) 在如图1所示的向导选择对话框中,单击数据库左
18、边的“+”号,使之展开。选择“创建数据库向导”项,单击“确定”按键。 图1 向导选择对话框4) 进入创建视图向导后,首先出现的是欢迎使用创建视图向导对话框,其中简单介绍了该向导的功能。单击“下一步”后,就会出现选择数据库对话框。5) 在选择数据库对话框中,选择视图所属的数据库。本例的数据库为“学生选课”。单击“下一步”按键,则进入选择表对话框。6) 在选择表对话框中,列出了指定数据库中所有用户定义的表。用户可以从中选择构造视图所需的一个表或者多个表,被选中的表成为构造视图的参考表。选择构造视图参考表的方法是:用鼠标单击表后的“包含在视图中”列,使复选框为选中状态。本例的数据库中只有学生表和选课
19、表,它们都应当被选中。单击“下一步”按键,则进入选择对话框。7) 列选择对话框中以表格形式列出了创建视图参考表的全部属性,每个属性占表的一行,创建视图参考属性可以在表格中选出。选择视图参考属性的方法是用鼠标单击属性名后边的“选择列”列,使复选框为选中状态。本例中学生.学号,学生.姓名和选课.成绩属性要被选中。单击“下一步”按键,进入创建视图的定义限制对话框,如图2所示。 图2 定义限制对话框8) 在定义限制对话框中,输入表的连接和元组选择条件。本例输入“所在系=信息系 AND 学生.学号 = 选课.学号 AND 选课.课程号 = C1”。单击“下一步”按键,出现视图名对话框。9) 在输入视图名
20、对话框中输入所建视图的标识名。本例的视图名为“信息系选课1”。单击“下一步”按键,则出现视图创建完成对话框。在完成对话框中给出了根据前面对话框输入的内容译成的SQL语句。您可以认真阅读该SQL语句,如果发现与要求有不符合之处可以直接进行修改。确认无误后单击“完成”按钮。随后出现一个通知用户已成功创建视图的信息框,单击“确认”按钮后,整个创建视图工作就完成了。2 查看和修改视图视图创建好后,就可以利用它进行查询信息了。如果发现视图的结构不能很好地满足要求,还可以在企业管理器对它进行修改。在企业管理器中修改视图结构需要首先选择服务器,数据库,并使数据库展开,然后用鼠标右击要修改的视图,在弹出的菜单
21、上选择“设计视图”项,则弹出一个视图设计对话框,如图3所示。当对其修改完毕后关闭窗口,新的视图结构就会取代原先的结构。 实验5 数据库保护数据安全性实验一 实验目的 本实验的目的是通过实验使学生加深对数据安全性的理解,并掌握SQL Server中有关用户,角色及操作权限的管理方法。二 相关知识 SQL Server提供以下四种防线:1 Windows NT操作系统的安全防线Windows NT的网络管理员负责建立用户组,设置帐号并注册,同时决定不同的用户对不同的系统资源的访问级别。用户只有拥有了一个有效的Windows NT登录帐号,才能对网络资源进行访问。2 SQL Server的运行安全防
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 应用 实验 指导书
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-4845758.html