240 likes | 427 Views
授课 -9 视图. 本课介绍视图的基本概念、特点及其实现方法。介绍视图与查询的异同。与查询一样,视图也可以对数据库中的多表按条件进行数据查询,但视图可以更新数据源表的数据,而查询却不能。. 9.1 视图 9.2 SQL 更新命令. 9.1 视图. 【 学习目标 】 用视图设计器创建视图 【 关键概念 】 视图与查询异同 视图更新 参数视图. 【 任务(上机 9 ,高新第 5.5 题) 】 操作要求 :
E N D
授课-9 视图 本课介绍视图的基本概念、特点及其实现方法。介绍视图与查询的异同。与查询一样,视图也可以对数据库中的多表按条件进行数据查询,但视图可以更新数据源表的数据,而查询却不能。 9.1 视图 9.2 SQL更新命令
9.1 视图 • 【学习目标】 • 用视图设计器创建视图 • 【关键概念】 • 视图与查询异同 • 视图更新 • 参数视图
【任务(上机9,高新第5.5题)】 • 操作要求: • 将C:\2006vfp\Unit5文件夹中的文件夹Y5-05复制到考生文件夹中,重命名为“X5-05”,然后新建项目管理器,命名为“项目5-5”,保存到文件夹X5-05中,完成下列操作。 • 1. 新建数据库: • 在“项目5-5”中新建数据库,命名为“X5-05.dbc”,并保存在文件夹X5-05; • 将Y5_05A.dbf、Y5_05B.dbf添加到数据库X5-05.dbc中。 • 2. 确定视图的数据源: • 打开数据库X5-05.dbc,新建一本地视图,选择数据库X5-05.dbc中的Y5_05A.dbf、Y5_05B.dbf作为该视图的数据源。
3. 建立数据源之间的关系: • 用Y5_05A.dbf中的“类别id”与Y5_05B.dbf中的“类别id”字段建立内部联接。 • 4. 设置视图字段及表达式: • 选择Y5_05A.dbf中的字段“类别id”、“类别名称”; • 选择Y5_05B.dbf中的字段“产品id”、“产品名称”、“单位数量”、“供应商id”; • 参照样文5-05A所示,编辑显示“Y5_05b.单价*Y5_05b.再订购量”的表达式,并添加到选定字段中。 • 5. 指定视图的条件: • 选择字段“Y5_05b.产品id”为分组依据; • 筛选出“Y5_05a.类别id”为“1”的记录; • 选择字段“Y5_05b.产品名称”为排序依据,并要求升序排列
6. 设置视图更新条件: • 将“Y5_05a.类别id”、“Y5_05b.产品id”设置为关键字段; • 将“Y5_05b.单位数量”、“Y5_05b.供应商id”设置为可更新字段; • 将表设置为可更新。 • 7. 保存视图和更新数据: • 将“视图”命名为“视图5_05“; • 按样文5-05B所示修改视图中“产品id”为“76”的记录的“单位数量”、“供应商id”字段的内容。 样文5-05B
【任务分析】 • ●视图的概念: • (1)视图是一个“虚表”;视图中查询出来的数据会随基本表中的数据的变化而变化; • (2)视图类似于一个窗口;视图定义后,就可以和基本表一样被使用 • ●说明: • 数据库中仅仅存储有关视图的定义,不存放视图所对应的记录,这些记录仍存放在导出视图的基本表中。 • 注:对视图的操作,实质上是对基本表的操作。 • ●VFP 6.0 中的视图分类: • (1)本地视图:更新本地计算机存储的数据 • (2)远程视图:更新服务器上的数据
9.1.1 使用视图设计器建立视图 • 1.进入视图设计器 • • 使用命令 • 格式:CREATE VIEW • • 使用菜单 • 选择“文件”菜单下的“新建”或“常用”工具栏的“新建”,打开“新建”对话框,选择“视图”并单击“新建文件”打开视图设计器建立视图。 • • 使用项目管理器 • 打开“数据”选项卡,展开数据库,选择“本地视图”或“远程视图”,单击“新建”命令按钮。
2.视图设计器操作 • 视图设计器与查询设计器功能相似,只是视图设计器中多了“更新条件”选项卡,少了“输出设置”功能。
更新条件选项卡包括以下选项: • (1)表选择 • 如果视图是基于多个表的,默认可以更新“全部表”的相关字段,如果指定只能更新某个表的数据,则可以通过“表”下拉列表框中选择表。 • (2)字段名选择 • 包括了“字段”选项卡中选定的所有字段,在字段名左侧有两列标志,“钥匙”表示关键字段,“铅笔”表示可更新字段。通过单击相应列可以改变相应的状态,默认可以更新所有非关键字字段。
(3)重置关键字按钮 • 从每个表中选择主关键字字段作为视图的关键字段。当已经改变了视图的关键字后,又想恢复到源表中的初始设置,单击这个按钮将会使VFP 6.0 自动检查远程表并列的那些关键字段。 • (4)全部更新按钮 • 该按钮的作用是在已经有视图关键字的表中选择除了关键字字段以外的所有字段均可更新。并在铅笔标记下划上对钩标记。 • (5)发送SQL更新选项 • 这个选项指定是否将视图中记录的修改传送给原始表。
(6)SQL WHERE 子句包括选项 • 这个选项控制将哪些字段添加到WHERE子句中,当视图将修改传送到原始表时,就可以检测服务器上的更新冲突。 • 冲突:视图中的返回值和原始表当前值的比较,若不等,则发生冲突。 • 其中的选项意义如下: • “关键字段”被选定:只对关键字段进行检测冲突; • “关键字和可更新字段”被选定:若改变任何可更新字段,则检测冲突; • “关键字和已修改字段”被选定:当在已经作了修改的字段中,又有某个字段作过修改,将检测是否发生冲突;
(7)使用更新选项 • 这个选项指定字段如何在后端服务器上进行更新。 • “SQL DELETE 然后INSERT”选项:指定删除原始表记录,并创建一个新的在视图中被修改的记录; • “SQL UPDATE”选项:将用视图字段中的变化来修改原始表的字段。一般使用该选项。
3.创建参数视图 • 所谓参数视图,即视图在进行查询前,可根据提示输入查询条件。该功能使用户更加方便地操作视图,满足特殊的检索要求。 • 例如:用户想根据性别来查询xsb.dbf中所有同学的记录,可以把“KC”(课程)字段定义为一个参数,保存文件名为参数视图。 • 步骤: • 1) 打开“视图设计器”——“视图参数” • 2) 输入参数名及数据类型 • 3) 在“筛选”选项卡的“实例”中输入“?课程名”
4. 修改、删除视图 • 1)在视图设计器中修改视图,进入视图设计器的方法: • • 使用菜单或工具栏打开视图 • • 使用命令: • 格式:MODIFY VIEW(注:先打开相关数据库) • 2)删除视图的方法: • • 在数据库设计器中删除 • 打开数据库设计器,选中待删除的视图,按DELETE键 • • 使用命令: • 格式:DROP VIEW 视图名
5. 使用视图 • 单击工具栏中的运行按钮,运行视图。 • 视图的使用和表也很相似,可以在命令窗口用操作命令操作视图,例如USE 、BROWSE、APPEND、LIST、LIST STRUCTURE 等。也可在表单、报表或程序中像使用表一样使用视图。 • 例如:建立一个能修改学生.dbf和选课.dbf中xh、xm、xb、zy、kcbm、cj等字段数据的视图,视图名为修改数据。
使用视图设计器完成本课任务的要点 • 1)新建一本地视图,添加表; • 2)为表建立关系; • 3)选定字段和字段表达式; • 4)设置筛选条件; • 5)选定排序方法; • 6)设置更新(设置关键字、可更新字段、使用更新、发送SQL) ; • 7)保存,浏览视图。
9.1.2 使用视图向导建立视图 • 利用视图向导设计视图的步骤: • 1.启动视图向导 • 2.选定字段 • 3.为表建立关系 • 4.包含记录 • 5.筛选记录 • 6.排序记录 • 7.限制记录 • 8.完成 • 9.浏览视图
9.1.3 使用远程视图向导建立远程视图 • 远程视图可以用来使用远程数据服务。使用它可以实现无需将所有记录下载到本地计算机上,就可以提取远程ODBC服务器上的数据子集,然后把更改或添加的值,回送到远程数据源中。 • 在使用远程视图之前,必须创建与远程数据源连接的方法,有两种方法: • 1.直接方法在机器上注册的ODBC数据源; • 2.用连接设计器设计自定义的连接。
9.2 SQL更新命令 • 【学习目标】 • SQL 更新命令 • 【关键概念】 • UPDA …SET … WHER
SQL更新命令的使用 • 【任务】 • 操作要求: • 使用SQL更新命令,按样文5-05B所示修改视图中“产品id”为“76”的记录的“单位数量”、“供应商id”字段的内容。 样文5-05B
9.2.1 SQL更新记录命令 • 1. 命令格式 • UPDATE 数据库名!表名 ; • SET 字段名1 = 表达式1,字段名2 = 表达式2,…; • WHERE 条件表达式 • 2.命令功能 • 用指定表达式的值更新表、视图中符合条件记录的指定字段的值。 • 3.任务完成 • UPDA X5-05!视图5_05 ; • SET 单位数量 = ‘每箱20瓶’,供应商id = ‘21’; • WHERE 类别id = ‘1’ AND 产品id = ‘76’
【小结】 • 使用视图设计器创建试图的步骤: • 1)选定字段 • 2)设置联接 • 3)筛选记录 • 4)结果排序 • 5)建立分组 • 6)设置更新(设置关键字、可更 • 新字段、使用更新、发送SQL) • 7)杂项的设置 • 参数视图的制作 • 在筛选的实例中输入: ?参数名 • 在[查询]菜单中点[视图参数],… • SQL更新命令 • UPDA … SET … WHER 【作业】 使用视图设计器完成上机9(高新考试第5.5题)。 提示: 1)筛选设置(会使用 bettwen、in 两个条件形式)。 2)更新设置,设置后在视图中做更新操作,观察源表记录的变化。 返回本章目录