第六章 查询与视图
本章复习重点及考纲要求
查询的根据,了解查询设计器各选项卡的功能
掌握查询文件的应用(建立、运行和修改)
理解视图与查询的异同点(尤其是查询与视图设计器选项卡的区别)
掌握视图的建立、修改、打开、删除
复习难点:
创建视图的命令
创建视图: create View <视图名>
修改与打开视图: Modify View <视图名>
删除视图: drop | Delete view <视图名>
| 命令 | 详细内容 |
创建 视图 | Create View 显示视图设计器来创建 SQL 视图。 语法
CREATE SQL VIEW [ViewName ] [REMOTE] [CONNECTION ConnectionName [SHARE] | CONNECTION DataSourceName] [AS SQLSELECTStatement]
参数
ViewName
指定要创建的视图的名称。
REMOTE
指定创建使用远程表的远程视图。如省略 REMOTE,可用本地表创建视图。
CONNECTION ConnectionName [SHARE]
打开视图时,指定建立一个命名连接。如果包含 SHARE 子句,并且共享连接可用,Visual FoxPro 将使用共享连接。如果共享连接不可用,则在打开视图时创建一个唯一连接,其他视图不能使用该连接。
CONNECTION DataSourceName
指定一个已存在的、建立了连接的数据源。
AS SQLSELECTStatement
指定视图定义。SQLSELECTStatement 必须是一个合法的 SQL SELECT 语句,而且不必用引号括起来。对于本地视图,通过用数据库名和惊叹号 ( ! ) 作为视图或表名的前缀,可以指定数据库(不是当前数据库)中的表和视图。例如,下面的命令创建了 SQL 视图 mysqlview。该视图选择了 customer 数据库的 orders 表中的所有字段:
CREATE SQL VIEW mysqlview AS SELECT * FROM customer!orders
有关 SQL SELECT 语句的其他内容,请参阅 SELECT - SQL。 可通过创建一个参数化视图,而不用为每个记录子集都创建一个单独的视图,来限制视图的范围。参数化视图利用 WHERE 子句,通过提供一个值作参数,把记录限制在那些符合条件的记录上。 例如,可以创建一个 SQL 视图,根据您提供的国家名称下载有关该国的记录。 所提供的参数被当作是 Visual FoxPro 表达式来计算。如果计算失败,Visual FoxPro 提示参数值。例如,假定 Testdata 数据库的 customer 表放在一个远程服务器上,下面的示例创建了一个参数化远程视图,它把视图限制在某个国家的顾客上,国名由参数 ?cCountry 的值提供:
OPEN DATABASE testdata CREATE SQL VIEW customer_remote_view CONNECTION remote_01 ; AS SELECT * FROM customer WHERE customer.country = ?cCountry
提示 如果参数是一个表达式,应把参数表达式用圆括号括起来。这样使整个表达式当作是参数的一部分来计算。
有关参数化视图的详细内容,请参阅《开发指南》第八章“创建视图”。
说明 在创建 SQL 视图之前,必须独占地打开数据库,可用包含 EXCLUSIVE 关键字的 OPEN DATABASE 命令独占地打开一个已存在的数据库,或用 CREATE DATABASE 来创建一个新的数据库。 |
修改 视图 | modify view 显示视图设计器,从中可以修改已存在的 SQL 视图。 语法
MODIFY VIEW ViewName [REMOTE]
参数 ViewName
指定要修改的视图名称。
REMOTE
指定该视图是一个使用远程表的远程视图。如果省略 REMOTE 子句,可以修改一个基于本地表的视图。
说明
使用 CREATE SQL VIEW 命令创建 SQL 视图。 包含 SQL 视图的数据库必须以独占方式打开。要以独占方式打开数据库,在 OPEN DATABASE 命令中包含 EXCLUSIVE 子句。 |
删除 视图 | 从当前数据库中删除一个 SQL 视图。 语法
DELETE VIEW <视图名>
参数
ViewName-视图名
指定从当前数据库中删除的视图名。
说明 可使用 CREATE SQL VIEW 创建一个 SQL 视图,并向当前数据库中添加该视图。如果打开了一个 SQL 视图,然后删除它,包含 SQL 视图结果的临时表不会被关闭。 DELETE VIEW 要求独占地使用数据库。要以独占方式打开数据库,可在 OPEN DATABASE 中包含 EXCLUSIVE。
也可以使用:Drop View 命令 从当前数据库中删除指定的 SQL 视图。 语法 DROP VIEW ViewName 设置 ViewName 指定要删除的视图。 说明 DROP VIEW 的作用与 DELETE VIEW 相同。但 DROP VIEW 是 ANSI SQL 标准语法。 使用 CREATE SQL VIEW 创建 SQL 视图,并把视图加入到数据库中。如果 SQL 视图在打开时被删除,则包含 SQL 查询结果的临时表并不关闭。
|