77范文网 - 专业文章范例文档资料分享平台

数据库实验指导(10)

来源:网络收集 时间:2020-04-15 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

图3-1字段查询结果图

2)基于T_Teacher表按选择操作定义视图。

举例:定义一个满足sex=’男’的员工的所有信息的视图。

具体操作:在视图操作窗,勾选所有列,然后在对应Sex的筛选器内填入筛选条件=‘男’,单击运行即可实现选择操作。或者使用以下代码

create view 所有男性教师信息 as SELECT Teacher_id AS 教师工号, Teacher_name AS 教师姓名, Title AS 职称, Sex AS 性别, Telephone AS 电话, Enter_date AS 入职时间 FROM dbo.T_Teacher WHERE (Sex = '男') 查询结果如图3-2所示。代码生成视图后,左侧对象资源管理器中选中视图右击设计即可看到。

38

图3-2 单表选择查询结果图

3)基于多个表根据连接操作定义视图。

举例:定义一个视图用以查看所有教师的姓名及其订购书目、数量。 具体操作:

i)此视图涉及到T_Teacher表、T_BookaInfo表和T_BookOrder表三者联合查询。 新建视图将此三张表添加到视图操作窗。

ii)分别从三张表中勾选Book_name、Teacher_name和Book_num后单击执行即可获取联合表信息。或者使用以下代码

create view 教师订书基本信息 as SELECT dbo.T_BookInfo.Book_name AS 书名, dbo.T_Teacher.Teacher_name AS 教师名, dbo.T_BookOrder.Book_num AS 定购数目 FROM dbo.T_BookInfo INNER JOIN dbo.T_BookOrder ON dbo.T_BookInfo.Book_id = dbo.T_BookOrder.Book_id INNER JOIN dbo.T_Teacher dbo.T_Teacher.Teacher_id ON dbo.T_BookOrder.Teacher_id = 查询结果如图3-3所示。代码生成视图后,左侧对象资源管理器中选中视图“教师订书基本信息”右击设计即可看到。

39

图3-3联合查询结果

4)基于多个表根据嵌套查询定义视图。

举例:定义一个比所有教师订书数目最高的教师的信息的视图。 具体操作:

i)此视图涉及到T_Teacher表、T_BookaInfo表和T_BookOrder表三者联合查询。 新建视图将此三张表添加到视图操作窗。

ii)分别从三张表中勾选Book_name、Teacher_name和Book_num后,在单击执行即可获取联合表信息。或者使用以下代码创建视图。

create view 购书最多信息 as SELECT TOP (1) dbo.T_BookInfo.Book_name AS 书名, dbo.T_Teacher.Teacher_name AS 教师名, dbo.T_BookOrder.Book_num AS 定购数目 FROM dbo.T_BookInfo INNER JOIN dbo.T_BookOrder ON dbo.T_BookInfo.Book_id = dbo.T_BookOrder.Book_id INNER JOIN dbo.T_Teacher ON dbo.T_BookOrder.Teacher_id = dbo.T_Teacher.Teacher_id ORDER BY 定购数目 DESC 查询结果如图3-4所示。代码生成视图后,左侧对象资源管理器中选中视图右击设计即

40

可看到。

图3-4 查询订购最多教师信息

5)定义含有虚字段(即基本表中原本不存在的字段)的视图。

举例:定义一个视图用以查看所有教师的姓名、购书名称、单价和需要花费总金额。

create view 购书费用表 as SELECT dbo.T_Teacher.Teacher_name AS 教师姓名, dbo.T_BookInfo.Book_name AS 书名, dbo.T_BookInfo.Price AS 单价, dbo.T_BookInfo.Price * dbo.T_BookOrder.Book_num AS 总价 FROM dbo.T_Teacher INNER JOIN dbo.T_BookOrder ON dbo.T_Teacher.Teacher_id = dbo.T_BookOrder.Teacher_id INNER JOIN dbo.T_BookInfo ON dbo.T_BookOrder.Book_id = dbo.T_BookInfo.Book_id 查询结果如图3-5所示。代码生成视图后,左侧对象资源管理器中选中视图右击设计即可看到。

41

图表3-5含有虚字段视图

2. 存储过程练习

对应实验二创建数据库,参照前面实验中完成的查询,按自行定义要求并创建存储过程。以下为示例,请根据个人情况选定要求创建存储过程并执行验证。

1) 创建存储过程查询女教师定购教材情况,要求显示教材名称,教师姓名和订购数量。 具体操作:

i)在BOOK数据库下选中【视图】|【可编程性】|【存储过程】右击选择【新建存储过程】即打开存储过程编辑框。或者直接在“新建查询”窗口进行以下步骤。

ii)在打开的编辑框输入以下代码后单击执行刷新后在【可编程性】【存储过程】下可看到新建的存储过程pro_book1: CREATE PROCEDURE pro_book1 -- Add the parameters for the stored procedure here @sex char(2) --查询条件为性别 AS BEGIN SET NOCOUNT ON; SELECT T_BookInfo.Book_name,T_Teacher.Teacher_name,T_BookOrder.Book_num FROM 42

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库数据库实验指导(10)在线全文阅读。

数据库实验指导(10).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/959940.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: