视图:
视图不能单独存在,必须依赖单个或多个表,它是表中派生出来的虚拟表。
在涉及视图时,常把表称作基本表
创建视图的命令:
Create view 视图名As select……
基于单个表的视图:
例题1: 某个用户对职工表只能让他知道职工号和所在仓库号
可以和基本表一样对视图进行查询,也可以进行修改.
直接浏览
视图可以限定对数据的访问
基于多个表的视图:
例题2:某部门经理要知道所有员工的职工号,工资,城市信息
Create view gege as select 职工号,工资,城市 from 职工,仓库 where 职工.仓库号=仓库.仓库号
create view xg as;
select 职工号,工资,城市 from 职工 inner join仓库;
on 职工.仓库号 =仓库.仓库号
视图还可以简化数据的查询
学生练习
建立包含 城市在北京的员工的职工号 和员工的视图
Create view jiejie as select 职工号,员工 from 职工 where 仓库号 in (select 仓库号 from 仓库 where 城市=”北京”)
视图的删除:
Drop view 视图名
直接删除
为字段定义别名语法
字段名 as 别名(必须用于select后面)
为职工表的工资字段 定义别名月工资
为表达式工资*12 定义别名 年工资
视图中的虚字段:
Create view gege as select 职工号,工资 as 月工资,工资*12 as 年工资 from 职工
查询
查询是VF支持的一种数据库对象或者说是VF为方便检索数据提供的一种工具或方法
实际上查询就是预先定义好的一个sql select语句,在不同场合可以直接反复使用,它是以扩展名为.qpr的文本文件保存在磁盘上的
建立查询
1 新建菜单命令
2. create query
3.项目管理器
例题1通过仓库表和职工表建立一个含有仓库号,职工号,城市和工资信息的查询,并且先按仓库号升序,再按工资降序排序 (如果要增加一个查询表达式工资*12) 学生操作将查询保存到d盘根目录
如果打开的有数据库
因为
sql select语句是查询设计器生成的,所以有明显的VF痕迹
”添加表或视图”对话框 对应于 From
字段选项卡 对应于 Select
联结选项卡 对应于 Join…on
筛选选项卡 对应于 Where
排序选项卡 对应于 Order by
分组选项卡 对应于 Group by 和having
杂项选项卡 对应于 Distinct top
保存查询
修改一个已经保存的查询
例题2利用分组功能统计各仓库年工资额的总和
查询设计器的局限性
比较复杂的查询
查询设计器就设计不出来了 必须依靠sql select
比如说内外层互相关嵌套查询
退出查询设计器后使用查询
1. 命令方式 do 文件名.qpr (必须给出扩展名)
2. 项目管理器中操作
查询去向(输出去向)
浏览 在浏览窗口中显示查询结果
临时表 将查
询结果存放到临时表 into cursor
永久表 将查询结果存放到永久表 into table 或 into dbf
只能根据数据库表建立视图,不能根据自由表建立视图,查询可以根据自由表建立
视图
设计器
建立视图
1. 新建
2. create view
3. 项目管理器
例题1:某部门经理要知道所有员工的职工号,工资,城市信息 因为要用连接查询经理不会 所以要求我们创建视图
保存视图
修改一个已经保存的视图
视图设计器与查询设计器的几点区别
1查询设计器的结果是将查询以.qpr文本文件的形式保存在磁盘上,而视图设计完后,视图的结果保存在相应的数据库中
2因为视图可以用于更新表(而查询不能),所以有更新属性需要设置
3视图设计器中没有”查询去向”
问题