加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

实验二 数据库的建立和维护实验

(2010-12-01 09:19:07)
分类: 大学实验报告

一、实验目的

要求学生熟练掌握使用 SQL、Transact-SQL和SQL Server企业管理器向数据库输入数据、修改数据和删除数据的操作。

二、实验内容和步骤

1. 基本操作实验

(1)通过企业管理器,在图书-读者数据库的图书、读者和借阅3个表中各输入5条记录。要求记录不仅满足数据约束要求,还要有表间关联的记录。

http://s7/middle/6ea6cd6a4964f1198b886&690

http://s4/middle/6ea6cd6a4964f1226c263&690

http://s4/middle/6ea6cd6a4964f122aba63&690

(2)通过企业管理器实现对图书-读者数据库的图书、读者和借阅3个表中数据的插入、删除和修改操作。

http://s6/middle/6ea6cd6a0756e4e9fe705&690

http://s11/middle/6ea6cd6a0756e4ea37a5a&690

http://s13/middle/6ea6cd6a4964f1273898c&690

2. 提高操作实验

(1)通过查询分析器用SQL命令实现对学生-课程库的数据增加、数据删除和数据修改操作,要求学生、课程和选课表中各有5条以上的记录。

http://s2/middle/6ea6cd6a4964f12da25b1&690

http://s4/middle/6ea6cd6a4964f131b6133&690

http://s9/middle/6ea6cd6a4964f136b3ad8&690

insert

into Student

values('071150111','庄冰钦','女','20','CS')

http://s3/middle/6ea6cd6a4964f13e1c372&690

delete

from Student

where sno='071150111'

http://s6/middle/6ea6cd6a4964f141307d5&690

update Student

set Sage ='21'

where(Sno ='200215121')

http://s16/middle/6ea6cd6a4964f15a8651f&690

(2)通过查询分析器用SQL命令实现在读者表中增加“借书册数’字段,统计借书者在2005年~2007年间所借书的册数,并将结果送入读者表中的借书册数字段的操作。

alter

table 读者

add 借书册数 int

http://s11/middle/6ea6cd6a4964f1630f12a&690

update 读者

set 借书册数=

(select count(书号)

from 借阅

where 借阅日期 between '2005-01-01'and'2007-12-31'

and 读者.编号 =借阅.读者编号

)

http://s4/middle/6ea6cd6a0756e4f0f3f63&690

(3)通过查询分析器用SQL命令为学生-课程库中的“课程”表添加“学时(短整型)”属性,并设置它的约束条件为大于0且小于等于150。

alter table Course

add 学时 smallint check ([学时] > 0 and [学时] <= 150)

http://s13/middle/6ea6cd6a4964f1746f4cc&amp;690

三、实验方法

在Microsoft SQL Server2000的企业管理器中,对表进行数据增、删、改操作非常简便。其操作方法是:

l)选中服务器,展开数据库文件夹,进一步展开指定的数据库。单击表文件夹,找到需要更新数据的基本表。

2)用鼠标右击要更新数据的表,会出现与表相关操作的弹出菜单, 如图1所示。在弹出菜单中选择“打开表”→“返回所有行”,就会出现表数据更新对话框,如图2所示。

http://s1/middle/6ea6cd6a4964f174d4cc0&amp;690

http://s15/middle/6ea6cd6a4964f1761d0de&amp;690

图1 基本表的弹出菜单 图2 在表中插入、修改或删除数据界面

在该对话框中。数据以表格形式组织,每个字段就是表中的一列,每条记录是表中的一行。原有的记录已经在表格中,通过移动右边的滑块可查阅所有的记录。

3)需要数据插入时,就在最后一条记录后输入一条记录。当鼠标点击其他行时,输入的记录会自动保存在表中。

4)需要修改记录时,直接对表中已有记录的数据进行改动,用新值替换原有值。

5)需要删除记录时,先用鼠标单击要删除行的左边灰色方块,使该记录成为当前行,然后按<Delete>键。为了防止误操作,SQL Server 2000将弹出一个警告框,要求用户确认删除操作,单击“确认”按钮即可删除记录。也可通过先选中一行或多行记录,然后再按 <Delete>键的方法一次删除多条记录。

6)在表中单击鼠标右键时,会弹出如图2所示的菜单,选择菜单项可执行相应的操作,如剪切、复制等操作。

四、实验报告要求

1. 以一条记录为例,写出用Transact -SQL表示的向图书表中插入、修改和删除数据的语句。

2. 用Transact-SQL实现在读者表中增加“借书册数”字段,统计借书者在2005年~2007年间所借书的册数,并将结果送入读者表中的借书册数字段的操作语句。

3. 通过查询分析器用SQL命令为学生-课程库中的“课程”表添加“学时(短整型)”属性,并设置它的约束条件为大于0且小于等于150。

4. 写出操作的过程(包括调试过程)和操作结果(数据库中各表的数据)。

5. 体会或总结。

五、注意事项

1. 输入数据时要注意数据类型、主码和数据约束的限制。

2. 数据更改和数据删除时要注意外码约束。

六、思考题

1. 数据库中一般不允许更改主码数据。如果需要更改主码数据时,怎样处理?

2. 为什么不能随意删除被参照表中的主码。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有