- 1、本文档共111页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工程科技]第4章 查询与视图操作
4.3.5 视图的定义 在Visual FoxPro 中视图是一个定制的虚拟表,可以是本地的、远程的或带参数的。视图可引用一个或多个表,或者引用其他视图。视图是可更新的,它可引用远程表。 在关系数据库中,视图也称作窗口,即视图是操作表的窗口,可以把它看作是从表中派出来的虚表。它依赖于表,但不独立存在 。 视图是根据对表的查询定义的,其命令格式如下: CREATE VIEW view_name[(column_name[,column_name]…)] AS select_statement 其中select_statement可以是任意的SELECT查询语句,它说明和限定了视图中的数据;当没有为视图指定字段名(column_name)时,视图的字段名将与select_statement中指定的字段名或表中的字段名同名。 视图是根据表定义或派生出来的,所以在涉及到视图的时候,常把表称作基本表。 1. 从单个表派生出的视图 如果某个用户对职工关系只需要或者只能知道职工号和所工作的仓库号,那么可定义视图: CREATE VIEW 视图1 AS; SELECT 职工号,仓库号 FROM 职工 其中”视图1”是视图的名称。视图一经定义,就可以和基本表一样进行各种查询,也可以进行一些修改操作。对于最终用户来讲,有时并不需要知道操作的是基本表还是视图。 为了查询职工号和仓库号信息,可以有命令: SELECT * FROM 视图1 或 SELECT 职工号,仓库号 FROM 视图1 或 SELECT 职工号,仓库号 FROM 职工 它们可以收到同样的效果。 上面是限定列构成的视图,下面再限定行定义一个视图。比如,某个用户对仓库关系只需要,或者只能查询北京仓库的信息,可以定义如下视图: CREATE VIEW 视图2 AS; SELECT 仓库号,面积 FROM 仓库 WHERE 城市=“北京” 这里”视图2”中只有北京仓库的信息,所以城市属性就不需要. *** 视图一方面可以限定对数据的访问,另一方面又可以简化对数据的访问 2. 从多个表派生出的视图 有些查询是很复杂的,比如要出每个职工经手的具有最高总金额的订购单信息. 可以使用视图: 【例4.66】列出每个职工经手的具有最高总金额的订购单信息。 CREATE VIEW 视图3 AS; SELECT out.职工号,out.供应商号,out.订购单号,out.订购日期,out.总金额; FROM 订购单 out WHERE 总金额=; (SELECT MAX(总金额)FROM 订购单 inner1; WHERE out.职工号=inner1.职工号) 这时候再提出同样的查询要求,就只需要输入以下命令即可: SELECT * FROM 视图3 举 例 【例4.67】 建立视图向用户提供职工号、职工的工资和职工工作所在城市的信息: CREATE VIEW 视图4 AS; SELECT 职工号,工资,城市 FROM 职工,仓库; WHERE 职工.仓库号=仓库.仓库号 结果对用户就好象有一个包含字段职工号、工资和城市的表。 3. 视图中的虚字段 用一个查询来建立一个视图的SELECT子句可以包含算术表达式或函数与视图的其他字段一样对待,由于它们是计算得来的,并不存储在表内,所以称为虚字段。 【例4.68】 定义一个视图,它包含职工号、月工资和年工资3个字段。 CREATE VIEW 视图5 AS; SELECT 职工号,工资 AS 月工资,工资*10 AS 年工资 ; FROM 职工 这里在SELECT短语中利用AS重新定义了视图的字段名.由于其中一字段是计算得来的,所以必须给出字段名.这里年工资是虚字段,它是由职工表的工资字段乘以12得到的;而月工资就是职工表中的工资字段,由此可见,在视图中还可以重新命名字段名。 查询视图5: SELECT * FROM 视图5 可以有结果: A1 2220 22200 A3 2210 22100 A4 2250 22500 A6 2230 22300 4. 删除视图 由于视图是从表中派生出来的,所以不存在修改结构的问题,但是视图可以删除。删除视图的命令格式是: DROP VIEW视图名 【例4.69】用SQL命令删除视图2,输入命令: DROP VIEW 视图2 ? 5. 查询视图 视图定义后,用户就可以像对基本表一样对视图进行查询了。 【例4.70】在计算机系学生的视图中找出年龄小于19岁的学生。 SELECT 学号,姓名,年龄; FROM 计算机系学生; WHERE 年龄<18 【例4.71】 【例4.72】P124 6. 更新视图 更新视图是指通
您可能关注的文档
- [工程科技]墨池·新创-大河山ok.ppt
- [工程科技]小额业务柜面操作手册.doc
- [工程科技]如何成功经营一支现代化销售团队——杨台轩.ppt
- [工程科技]少女时代.ppt
- [工程科技]尼康镜头参数.doc
- [工程科技]工厂设计--项目建议书.ppt
- [工程科技]工程合同管理.ppt
- [工程科技]帐务标识培训.ppt
- [工程科技]建设项目的城市路网交通评价及优化研究_终稿_.pdf
- [工程科技]彩迪运动服装方案.doc
- 2023咸阳职业技术学院招聘笔试真题参考答案详解.docx
- 2023四川化工职业技术学院招聘笔试真题及参考答案详解.docx
- 2023哈尔滨职业技术学院招聘笔试真题及参考答案详解.docx
- 2023商洛职业技术学院招聘笔试真题及答案详解1套.docx
- 2023呼伦贝尔职业技术学院招聘笔试真题参考答案详解.docx
- 2023南阳农业职业学院招聘笔试真题参考答案详解.docx
- 2023天津公安警官职业学院招聘笔试真题带答案详解.docx
- 2023年上海电机学院招聘笔试真题参考答案详解.docx
- 2023年四川艺术职业学院招聘笔试真题参考答案详解.docx
- 2023安徽体育运动职业技术学院招聘笔试真题及答案详解一套.docx
文档评论(0)