最新5查询和视图汇总
(完整版)第5章查询和视图测试题
(完整版)第5章查询和视图测试题第3章查询和视图⼩测⼀、选择题(每题2分,共70分,答案写在题号前)1.下列利⽤“项⽬管理器”新建查询的操作中,正确的是()。
DA.打开“项⽬管理器”,单击“代码”选项卡,选定“查询”,单击“新建”按钮B.打开“项⽬管理器”,单击“⽂档”选项卡,选定“查询”,单击“新建”按钮C.打开“项⽬管理器”,单击“数据”选项卡,选定“查询”,单击“运⾏”按钮D.打开“项⽬管理器’,单击“数据”选项卡,选定“查询”,单击“新建”按钮2.打开“查询设计器”的命令是()。
CA.OPEN QUERY B.OPEN VIEW C.CREA TE QUERY D.CREATE VIEW3.在“查询设计器”的“字段”选项卡中设置字段时,如果将“可⽤字段”列表框中的所有字段⼀次移到“选定字段”列表框中,可单击()按钮。
DA.“添加”B.“全部移去” C.“移去”D.“全部添加”4.下列关于视图说法错误的是______。
DA.视图是在数据库表基础上创建的⼀种虚拟表B.视图兼有表和查询的特点C.视图分为本地视图和远程视图D.视图可以脱离数据库使⽤5.在“查询设计器”中,⽤来指定是否有重复记录属性的是()选项卡。
AA.“杂项,,B.“字段”C.“联接”D.“筛选”6. 运⾏查询⽂件cx.qpr的命令是()。
CA)USE cx B)USE cx.qpr C)DO cx.qpr D)DO cx7.“查询设计器”中的“筛选”选项卡的作⽤是()。
CA.增加或删除查询的表B.观察查询⽣成的SQL代码C.指定查询记录的条件D.选择查询结果的字段组织数据8.默认的表间联接类型是()。
AA.内部联接B.左联接 C.右联接 D.完全联接9.在VisualFoxPro中,查询结果以⽂件的形式保存起来,查询⽂件的扩展名为()。
DA..dbfB..sql/doc/9a14638107.html,D..qpr10.“查询设计器”中的“排序依据”选项卡⽤来设置()。
数据库实验5 多表查询及视图
实验五:多表查询及视图一、实验目的1.掌握SELECT语句的基本语法和查询条件表示方法;2.掌握数据表的连接查询、嵌套查询、集合查询的使用方法。
3.掌握创建及管理视图的方法;二、实验学时2学时三、实验要求1.了解SELECT语句的基本语法格式和执行方法;2.掌握连接查询、嵌套查询和集合查询的语法规则;3.掌握使用界面方式和命令方式创建及管理视图;4.完成实验报告;四、实验内容1.以实验3数据库为基础,请使用T-SQL 语句实现进行以下操作:1)查询选修了‘数学’或者‘大学英语’的学生学号、姓名、所在院系、选修课程号及成绩;2)查询与‘张力’(假设姓名唯一)年龄不同的所有学生的信息;3)按照“学号,姓名,所在院系,已修学分”的顺序列出学生学分的获得情况。
其中已修学分为考试已经及格的课程学分之和;4)查找选修了至少一门和张力选修课程一样的学生的学号、姓名及课程号;5)查询只被一名学生选修的课程的课程号、课程名;6)使用嵌套查询出选修了“数据结构”课程的学生学号和姓名;7)使用嵌套查询查询其它系中年龄小于CS系的某个学生的学生姓名、年龄和院系;8)使用ANY、ALL 查询,列出其他院系中比WM系所有学生年龄小的学生的姓名;9)使用集合查询查询选修1号课程同时选修2号课程的同学的学号与姓名;2.以实验数据库为基础数据,利用对象资源管理器创建以下视图:1)创建所有学生学号、姓名及年龄的信息视图v_stu_info2)创建CS系学生基本信息视图v_stu_cs3)创建选修课成绩在80分以上的学生的信息视图v_stu_80,包括学生基本情况及成绩。
3. 以实验数据库为基础数据,请使用T-SQL语句完成以下内容,并将SQL语句写在实验报告册中:1) 创建v_CS视图,包括CS系各学生的学号、姓名及年龄,要求进行修改和插入操作时仍需保证该视图只有CS系的学生;2) 创建v_CS_age20视图,包括CS系学生年龄在20岁以上的基本信息;并保证对视图文本的修改都要符合年龄大于20这个条件。
视图和查询的区别
视图和查询的区别1:什么是视图2:视图和查询的区别3:视图的优点4:如何创建和管理视图5:如何通过视图修改基本表的数据6:如何通过视图实现数据的安全性A:什么是视图:视图(view):从一个或几个基本表中根据用户需要而做成一个虚表1:视图是虚表,它在存储时只存储视图的定义,而没有存储对应的数据2:视图只在刚刚打开的一瞬间,通过定义从基表中搜集数据,并展现给用户B:视图与查询的区别:视图和查询都是用由sql语句组成,这是他们相同的地方,但是视图和查询有着本质区别: 它们的区别在于:1:存储上的区别:视图存储为数据库设计的一部分,而查询则不是.2:更新限制的要求不一样要注意:因为视图来自于表,所以通过视图可以间接对表进行更新,我们也可以通过update语句对表进行更新,但是对视图和查询更新限制是不同的,以下我们会知道虽然通过视图可以间接更新表但是有很多限制.3:排序结果:通过sql语句,可以对一个表进行排序,而视图则不行.比如:创建一个含有order by子句的视图,看一下可以成功吗?C:视图的优点:为什么有了表还要引入视图呢?这是因为视图具有以下几个优点: 1:能分割数据,简化观点可以通过select和where来定义视图,从而可以分割数据基表中某些对于用户不关心的数据,使用户把注意力集中到所关心的数据列.进一步简化浏览数据工作.2:为数据提供一定的逻辑独立性如果为某一个基表定义一个视图,即使以后基本表的内容的发生改变了也不会影响“视图定义”所得到的数据3:提供自动的安全保护功能视图能像基本表一样授予或撤消访问许可权.4:视图可以间接对表进行更新,因此视图的更新就是表的更新D:视图的创建和管理视图的创建1:通过sql语句格式:create view 视图名 as select 语句试一试:分别创建关于一个表或多个表的视图[因为视图可以来自于多表]2:通过企业管理器说明:1:在完成视图的创立之后,就可以像使用基本表一样来使用视图2:在创建视图时,并非所有的select子查询都可用如:compute和compute by,order by[除非与top一起连用]3:但在查询时,依然都可以用在创建时禁用的select子查询4:在视图创建时,必须为没有标题列指定标题[思考:能否不用select 语句来创建一个视图]视图的删除:1:通过sql语句:drop view 视图名2:通过企业管理器说明:与删除表不同的是,删除视图后只是删除了视图了定义,并没有删除表中的数据.[查看相关性]修改视图的定义1:通过企业管理器2:通过sql语句:格式:alter view 视图名 as 新的select语句浏览视图信息 sp_helptext 视图名 [查看视图创建的语句]E:如何通过视图修改基本表的数据.1:在视图上使用insert语句通过视图插入数据与直接在表中插入数据一样,但视图毕竟不是基本表.因此在进行数据插入时还是有一定的限制1:如果视图上没有包括基本表中属性为not null[不能为空]的列,那么插入操作会因为那些列是null值而失败.2:如果某些列因为某些规则或约束的限制而不能直接接受从视图插入的列时,插入会失败3:如果在视图中包含了使用统计函数的结果,或是包含计算列,则插入操作会失败4:不能在使用了distinct语句的视图中插入值5:不能在使用了group by语句的视图中插入值2:使用update更新视图中的数据1:更新视图与更新表格一样,但是在视图中使用了多个基本表连接的情况下,每次更新操作只能更新来自基本表的一个数据列例如:创建以下视图:create view del asselect 职工号,姓名,部门名称,负责人 from work1,部门where work1.部门编号=部门.部门编号如果再执行下面的语句时:update del set 职工号=\'001\',部门名称=\'wenda\' where 职工号=\'01\'[出现错误]只能够改成:update del set 职工号=\'001\' where 职工号=\'01\' update del set 部门名称=\'wenda\' where 职工号=\'01\' 2:不能在使用了distinct语句的视图中更新值3:不能在使用了group by语句的视图中更新值3:使用delete删除视图中数据.通过视图删除数据最终体现为从基本表中删除数据格式:delete 视图名 [where 条件]说明:当视图由两个以上的基表构成时,不允许删除视图的数据例如:建一个视图kkcreate view kk asselect 职工号,姓名,性别,部门名称from work1,部门where work1.部门编号=部门.部门编号 [试着去删除]使用with check option的视图如果不了解视图定义内容,则常常会发生向视图中输入不符合视图定义的数据的情况.比如:create view xm asselect * from work where 性别=\'男\'完全可以插入insert xm values(\'001\',\'女\',23,\'2400\'....)尽管从意义上来说是不合理的,但是上述语句是正确的.为了防止这种情况的发生,可以使用with check option子句来对插入的或更改的数据进行限制.比如:create view xm asselect * from work where 性别=\'男\' with check option使用schemabinding的视图[使用绑定到构架]我们知道视图是依赖于表,如果在一个表中创建一个视图,今后如果这个表被删除了,则这个视图将不可再用了.为了防止用户删除一个有视图在引用的表,可以在创建视图的时候加上schemabinding关键字.比如:create view 基本工资 with SCHEMABINDINGas select 姓名,性别,基本工资 from dbo.work说明:1:不能使用“*”来创建此类型的视图2:创建此类型的视图时,一定要加上dbo.表名.3:如果在某个表中定义了此类视图,则用户将不能对表的结构进行修改,否则会删除这些绑定4:如果用户对表的结构进行列改名,则会删除绑定而且视图不可用.5:如果用户对表的结构进行列的类型或者大小修改,则会删除绑定但视图可用,此时用户可以删除视图所引用的表.使用with encryption对视图进行加密为了保护创建视图定义的原代码,可以对视图进行加密.比如:create view kk with encryptionas select * from work where 职称=\'经理\'用sp_helptext来查看一下.或用企业管理器查看一下.说明:如果应用此项用户将无法设计视图F:使用视图加强数据的安全一般通过使用视图共有三种途径加强数据的安全性A:对不同用户授予不同的使用权.B:通过使用select子句限制用户对某些底层基表的列的访问C:通过使用where子句限制用户对某些底层基表的行的访问对不同用户授予不同的权限。
第五章 SQL语言、查询和视图
——Visual FoxPro 6.0数据库应用基础第二部分数据库操作第五章SQL 语言、查询和视图5.1 SQL语言5.3 视图第四章查询和统计⏹掌握并熟练运用SQL语言⏹掌握视图的概念学习目标数据库应用基础5. 1 SQL语言返回SQL 是结构化查询语言(Structured Query Language ,SQL )的缩写,它是一个通用的,功能极强的关系数据库的标准语言。
它与VFP 的其它表操作命令相独立,即可以独立使用。
如SQL 操作表时,不用USE 命令打开表1. SQL 语言具有以下特点⏹⏹高度非过程化⏹面向集合的操作方式⏹以同一种语法结构提供两种使用方式⏹语言简洁,易学易用2. SQL 语言具有以下功能(1)数据定义功能:用于定义数据表的结构,如创建、修改或删除数据表命令:CREATE 、ALTER 、DROP(2)数据操纵命令:SELECT(3)数据查询功能:用于查询数据命令:INSERT 、UPDATE 、DELETE(4)数据控制功能:用于控制用户对数据表的访问权限等命令:由于VFP 在安全控制方面的缺陷,没提供数据控制命令。
5.1.1数据定义语言SQL 语言使用数据定义语言(Date Definition Language ,简称DDL )实现其数据定义功能,可对数据库用户、基本表、视图、索引进行定义和撤消。
DDL 的命令及功能1.建立表结构命令CREATE TABLE创建数据表时已经打开了一个数据库,则所创建的数据表将自动添加到该数据库中,否则将生成自由表。
【命令】(<字段名1> <字段类型>[<字段宽度> [,小数位]][CHECK <表达式> [ERROR <提示信息>]][PRIMARY KEY/UNIQUE][,<字段名2> …])5.1.1数据定义语言5.1.1数据定义语言【说明】①FREE 指定创建自由表,当数据库没有打开时,不必指定该项.②命令中常见的字段数据类型和字段宽度及小数位数③NULL/NOT NULL 表示是否允许字段值为空值。
【最新2018】ppt五种视图及带图说明-word范文 (15页)
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==ppt五种视图及带图说明篇一:PowerPoint的视图方式有哪几种1. PowerPoint的视图方式有哪几种?各自作用是什么?1) 普通视图:它是系统默认的视图模式。
由三部分构成:大纲栏(主要用于显示、编辑演示文稿的文本大纲,其中列出了演示文稿中每张幻灯片的页码、主题以及相应的要点)、幻灯片栏(主要用于显示、编辑演示文稿中幻灯片的详细内容)以及备注栏(主要用于为对应的幻灯片添加提示信息,对使用者起备忘、提示作用,在实际播放演示文稿时学生看不到备注栏中的信息)。
2) 大纲视图:主要用于查看、编排演示文稿的大纲。
和普通视图相比,其大纲栏和备注栏被扩展,而幻灯片栏被压缩。
3) 幻灯片视图:主要用于对演示文稿中每一张幻灯片的内容进行详细的编辑。
此时大纲栏仅显示幻灯片号,备注栏被隐藏,幻灯片栏被扩大。
4) 幻灯片浏览视图:以最小化的形式显示演示文稿中的所有幻灯片,在这种视图下可以进行幻灯片顺序的调整、幻灯片动画设计、幻灯片放映设置和幻灯片切换设置等。
5) 幻灯片放映视图:用于查看设计好的演示文稿的放映效果及放映演示文稿。
2. IP地址1) “lll0”开始的地址都叫多点广播地址。
因此,任何第一个字节大于223小于240的IP地址(范围224.0.0.1-239.255.255.254)是多点广播地址;2) 每一个字节都为0的地址(“0.0.0.0”)对应于当前主机;3) IP地址中的每一个字节都为1的IP地址(“255.255.255.255”)是当前子网的广播地址;4) IP地址中凡是以“llll0”开头的E类IP地址都保留用于将来和实验使用。
5) IP地址中不能以十进制“127”作为开头,该类地址中数字127.0.0.1到127.1.1.1用于回路测试,如:127.0.0.1可以代表本机IP地址,用“http://127.0.0.1”就可以测试本机中配置的Web服务器。
视图的知识点归纳总结
视图的知识点归纳总结一、视图的定义1. 视图的概念视图是一个虚拟的表,它提供了一个基于一个或多个表的查询结果的逻辑展现。
通过视图,用户可以按照需要从数据库中获取部分数据,而不是直接访问底层的物理表。
视图可以理解为是数据库表的一个抽象,它是一个逻辑上的表,不存储任何实际数据。
2. 视图的作用视图的作用主要体现在以下几个方面:1)简化复杂的查询逻辑:通过视图可以将复杂的查询逻辑封装起来,提供简单直观的数据访问接口。
2)控制数据访问权限:通过视图可以限制用户对数据库中数据的访问权限,只允许用户访问他们需要的数据,提高数据的安全性。
3)提供数据的不同视角:通过视图可以将一个或多个表按照不同的视角进行组合,满足用户不同的数据访问需求。
二、视图的创建1. 创建视图的语法在数据库中,创建视图的语法一般如下所示:CREATE VIEW view_name ASSELECT column1, column2,...FROM table_nameWHERE condition;2. 创建视图的示例下面通过一个示例来说明如何创建视图。
假设有一个学生信息表(student)和一门课程信息表(course),现在需要创建一个视图,展示不同学生的选课情况。
创建视图的SQL语句如下:CREATE VIEW student_course ASSELECT , course.course_nameFROM studentJOIN courseON student.id = course.student_id;三、视图的使用1. 查询视图使用视图可以像查询表一样对其进行查询操作,语法和查询表的语法类似,如:SELECT * FROM view_name;,通过查询视图可以方便地获取需要的数据。
2. 更新视图在一些数据库中,创建的视图与底层的表具有联动,即当用户对视图进行更新时,底层的表也会相应地进行更新。
但是在其他数据库中,更新视图操作会受到限制,不能对视图进行直接更新。
实验5 索引和视图
实验5 索引和视图一、实验目的1.掌握索引的使用方法2.掌握数据完整性的实现方法3.熟悉视图的概念和作用4.掌握视图的创建方法5.掌握如何查询和修改视图二、实验准备1.了解索引的作用与分类2.掌握索引的创建方法3.了解视图的概念4.了解创建视图的方法5.了解对视图的操作三、实验内容及要求1.创建索引1)在Employees表的Name列和Address列上建立复合索引。
2)对Departments表上的DepartmentName列建立唯一性索引。
3)使用CREATE INDEX语句能创建主键吗?4)向Employees表中的出生日期列添加一个唯一性索引,姓名列和性别列上添加一个复合索引。
5)假设Departments表中没有主键,使用ALTER TABLE语句将DepartmentID列设为主键。
6)添加主键和添加普通索引有什么区别?7)创建与Departments表相同结构的表Departments1,将DepartmentName设为主键,DepartmentsID上建立一个索引。
2.删除索引1)使用DROP INDEX语句删除表Employees上的索引depart_ind。
2)使用ALTER TABLE语句删除Departments上的主键和索引Dep_ind。
3.创建视图1)创建YGGL数据库上的视图DS_VIEW,视图包含Departments表的全部列。
2)创建YGGL数据库上的视图Employees_view,视图包含员工号码、姓名和实际收入。
4.查询视图1)从视图DS_VIEW中查询出部门号为3的部门名称。
2)从视图Employees_view查询出姓名为“王林”的员工的实际收入。
5.更新视图1)向视图DS_VIEW中插入一行数据:6,广告部,广告业务。
2)执行完该命令使用SELECT语句分别查看视图DS_VIEW和基本表Departments中发生的变化。
3)尝试向视图Employees_view中插入一行数据,看看会发生什么情况。
第五章 查询、视图与sql
第五章查询、视图与sql5.1 创建查询1、下列关于查询说法不正确的是(d)。
a)查询是预先定义好的一个sql select b)查询是visual foxpro支持的一种数据库对象c)查询是从指定的表或视图中提取满足条件的记录,可将结果定向输出d)查询设计器具有局限性,仅限于从单个表或视图中提取记录2、查询的数据源可以来自(d)。
a)自由表 b)视图 c)数据库表 d)以上均可3、关于查询的叙述,正确的是(d)。
a)不能根据自由表建立查询 b)只能根据自由表建立查询c)只能根据数据库表建立查询 d)可以根据数据库表和自由表建立查询4、利用命令方式打开查询设计器,应在命令窗口中输入(d)。
a)open view b)open query c)create view d)create query5、在visual foxpro中,如果建立的查询是基于多个表,那么要求这些表之间(b)。
a)必须是独立的 b)必须有联系 c)不一定有联系 d)必须是自由表6、查询设计器中包含的选项卡依次为(a)。
a)字段、连接、筛选、排序依据、分组依据、杂项b)字段、连接、筛选、分组依据、排序依据、杂项c)字段、连接、筛选、排序依据、分组依据、更新条件、杂项d)字段、连接、筛选、分组依据、排序依据、杂项、更新条件7、建立查询前,首先会弹出一个“添加表或视图”的对话框,它相当于sql select语句中的(b)。
a)select b)from c)where d)into8、在查询设计器中,“字段”选项卡相当于sql select语句中的(a)。
a)select 子句部分 b)from 子句部分 c)where 子句部分 d)into 子句部分9、sql select语句中的group by子句对应于查询设计器中的(d)。
a)“筛选”选项卡 b)“连接”选项卡 c)“排序依据”选项卡 d)“分组依据”选项卡10、查询设计器中“排序依据”选项卡对应的sql短语是(b)。
第五章 创建查询与视图
5.1 创建查询1. 查询的概念查询:就是向一个数据库发出检索信息的请求,从中提取符合特定条件的记录。
查询文件:即保存实现查询的SELECT-SQL命令的文件。
查询文件保存时,系统自动给出扩展名.qpr;查询被运行后,系统还会生成一个编译后的查询文件,扩展名为 .qpx。
查询结果:通过运行查询文件得到的一个基于表和视图的动态的数据集合。
查询结果可以用不同的形式来保存。
查询中的数据是只读的。
查询的数据源:可以是一张或多张相关的自由表、数据库表、视图。
2. 用查询设计器创建查询基本步骤:打开查询设计器→添加创建查询所基于的数据表→定义输出内容→设置联接、筛选、排序、分组条件→选择查询结果的输出形式→保存查询文件→运行查询。
(1)打开查询设计器方法1:从文件菜单或工具栏上单击新建→查询→新建文件→进入查询设计器方法2:当所用到的数据表已在项目中时,从项目管理器窗口中单击数据→查询→新建→新建查询→进入查询设计器方法3:从命令窗口中输入命令:create query 查询文件名& 创建新查询modify query 查询文件名& 修改已存在的查询(2) 定义查询的输出内容单击字段选项卡→从可用字段列表框中单击所需字段(当输出的列不是直接来源于表中的字段时,单击函数和表达式框边的…按钮,打开表达式生成器,构造出所需的表达式)→单击添加按钮→所需字段自动出现在选定字段框中。
(3) 设置查询的筛选条件筛选条件决定将哪些记录显示出来。
在筛选框中构造筛选条件表达式时,要注意在实例框中输入不同数据类型时的格式:1) 字符串可以不带引号(当与源表中的字段名相同时才用引号);2) 日期型数值要用{ }括起来;3) 逻辑型数据两侧要带 .号,如 .T.,.F.(4) 设置查询结果的排序依据排序决定查询输出结果中记录显示的顺序。
设置方法:单击排序依据→从选定字段框选中字段→选择升序或降序→单击添加。
(5) 设置查询结果的分组依据分组是指将一组类似的记录压缩成一个结果记录,目的是为了完成基于该组记录的计算,比如:求平均值、总和、统计个数、其中的最大值、最小值等。
2.5查询与视图及SQL查询语言
2.5 查询与视图及SQL查询语言2.5.1例题分析一、选择题1.在VFP的查询设计器中“筛选”选项卡对应的SQL短语是()。
A) SELECT B) FORC) WHERE D) JOIN例题分析:查询设计器是SQL的界面方式,通过查询设计器可以构造一条SQL语句,因此,查询设计器的各选项卡都与SQL短语对应,其中“筛选”选项卡对应WHERE短语,“字段”选项卡对应SELECT 短语,“连接”选项卡对应JOIN ON 短语,“排序依据”选项卡对应ORDERBY 短语,“分组依据”选项卡对应GROUP BY 短语,“杂项”选项卡中无“重复记录”复选框对应DISTINT 短语,“列在前面的记录”对应TOP 短语。
参考答案:C2.在SQL的查询语句中,实现关系运算的投影操作的短语为()。
A) SELECT B)FROMC) WHERE D) JOIN ON例题分析:关系的基本操作包括选择、投影和连接,在SQL查询中都有短语具体实现,其中WHERE实现的是选择,SELECT 实现的是投影,JOIN ON 实现的是连接。
参考答案:A3.下列哪条命令执行后不能产生磁盘文件()。
A) CREATE TABLE B) CREATE VIEWC) CREATE QUERY D) CREATE DATABASE例题分析:命令CREATE TABLE 建立扩展名为.DBF的表文件,命令CREATE QUERY 建立扩展名为.QPR的查询文件,命令CREATE DATABASE 建立扩展名为.DBC.的数据库文件,而命令CREATE VIEW 建立的是一个视图,它不是一个独立的磁盘文件,而是存储于数据库中的虚拟表。
参考答案:B4.VFP 系统中,使用查询设计器生成的查询文件中保存的是()。
A) 查询的命令 B) 与查询有关的基表C) 查询的结果 D) 查询的条件例题分析:使用查询设计器生成的查询文件中保存的是一条SQL命令,并非查询出来的结果,这个命令中包含了查询的基表、查询的条件等信息。
CH5 查询和视图
CH5 查询和视图知识要点1. 建立查询文件建立查询文件的方法有:(1)单击“文件”菜单中的“新建”命令(或工具栏上的“新建”按钮),在“新建”对话框中选择“查询”,然后单击“新建查询”按钮,同时打开查询设计器和“添加表和视图”对话框,选择相关数据库,单击“添加”按钮添加用于建立查询的表和视图。
(2)在”项目管理器”中,选择“数据”选项卡中的查询,单击“新建”按钮,则出现新建查询的方式选择对话框。
单击“新建查询”按钮,则打开“查询设计器”对话框。
(3)执行CREATE QUERY命令打开查询设计器建立查询。
(4)直接编辑.qpr文件建立查询。
2.查询选项卡:查询设计器界面的各项选卡和SQL SELECT语句的个短语是相对应的。
“添加表和视图”:打开查询设计器就可以选择设计查询的表或视图,这项操作对应于FROM 短语,此后还可以从“查询”菜单或工具栏中选择“添加表”或选择“移去表”重新指定设计查询的表;“字段”选项卡对应于SELECT 短语,指定所要查询的数据,这时可以单击“全部添加”选择所有字段,也可以逐个选择字段“添加”;函数和表达式“编辑框中可以输入或编辑计算表达式。
“联接“选项卡对应于JOIN ON 短语,用于编辑联接条件。
“筛选”选项卡对应于WHERE 短语,用于指定查询条件。
“排序依据”选项卡对应于ORDER BY 短语,用于指定排序的字段和排序方式。
“分组依据”选项卡对应于GROUP BY 短语和HAVING 短语,用于分组。
“杂项”选项卡可以指定是否要重复记录(对应于DISTINCT)及列在前面的记录(对应于TOP 短语)等。
从以上个选项卡的内容可以看出,如果熟悉SQLSELECT,那么设计查询是非常简单的;反之如果不熟悉,甚至不了解SQL SELECT,将很难理解查询设计器的这些内容。
例题1.在Visual FoxPro 中,查询文件的扩展名为____。
A..qpr B..fmt C..fpt D..lbt[解析] 本题考查的知识点是查询文件的扩展名。
视图与查询的区别
一、视图与查询的区别功能不同。
视图可以更新字段内容并返回原表,而查询文件中的记录数据不能修改。
这是视图与查询的本质区别。
归属不同。
视图不是一个独立的文件,它保存在数据库中。
查询文件是一个独立的文件,不属于数据库。
访问限制不同。
视图的数据来源可以是本地数据源,也可以是远程数据源,而查询不能访问远程数据源。
输出去向不同。
视图只能当表使用,而查询可以选择多种查询去向,如表、图表、报表、标签等多种形式。
使用方法不同。
视图可以作为数据源被引用,而查询不能被引用。
使用方式不同。
视图只有所属的数据库被打开时才能使用。
而查询可在“命令”窗口中执行。
二、数据库在创建关系之前,要关联的表之间必须有公共的字段和索引。
在数据库中创建的关系称为“永久关系”,之所以成为永久关系,是因为这种表与表之间的关系作为数据库的一部分存储在数据库文件中。
两个建立了关系的表可以分为父表和子表。
显然,一个父亲可以有一个或多个子女,而每个子表只能有一个父表。
这样两个表之间的关系就由子表在建立关系使用的索引类型决定了。
如果子表索引类型为[主索引]或[候选索引],那么,两表之间就是一对一关系。
否则,若子表索引类型为[普通索引]或[唯一索引],那么,两表间就是一对多关系。
而作为父表来说,它在建立关系时使用的索引类型就只能是[主索引]或[候选索引]。
三、查询在多表查询中,可以使用数据库表、自由表、本地视图或远程视图的任意组合。
在查询中,我们在表之间建立的联接与数据库中表之间的关系是不同的。
在查询中,表之间建立的联接是以选择标准存在,不会象数据库中表之间的持续关系那样持续保存下来,也不必建立在索引的基础上。
只有当字段的大小相等,且数据类型相同时才能建立联接。
同表之间的永久关系一样,一个表不能同时为两个父表的子表,也不能同时为两个子表的父表。
???。
查询与视图VFP课件
查询与视图
一 创建查询(打开查询设计器): 创建查询(打开查询设计器) 1.鼠标操作:“文件” →“新建” →“查询” →“新 1.鼠标操作:“文件” 建文件夹” 2. 命令操作: CREATE QUERY 查询文件名
二
介绍“查询设计器”
查询设计器下部分的窗口中有几个选项卡,其含义简介如 下: “字段”:对应于SELECT短语,用来选定包含在查询结果 中的字段 图之间的联接关系; “筛选”:对应于WHERE短语,用于指定查询条件; “排序依据”:对应于ORDER BY短语,用来指定排序的 字段和排序方式;
BY和HAVING短语,用于分组; “杂项”:可以指定是否要重复记录(DISTINCT)以及列在 前面的记录(TOP短语)
“分组依据”:对应于GROUP
三 查询的输出
鼠标操作:“查询” →“查询去向”
四 运行查询(先保存再运行)
鼠标操作: 单击“查询”/“运行查询”,或 “!”按钮 。 单击“查询”/“运行查询”,或 命令操作:Do 命令操作:Do 查询文件名 :查询文件名中一定要给出查询文件的扩展名.qpr :查询文件名中一定要给出查询文件的扩展名.qpr :单击“查询”/“查看SQL”,Select-SQL命令将文本窗口 :单击“查询”/“查看SQL”,Select-SQL命令将文本窗口 中显示
一
创建视图(打开视图设计器)
鼠标操作:打开 “数据库设计器” “文件”/“新建” “文件”/“新建” “视图” 命令操作:CREATE 命令操作:CREATE VIEW 视图文件名
数据库表,创建视图。
vfp第5章查询视图
第5章 查询与视图
视图
⑸保存视图
• “文件” →“保存”
浏览视图
• 在相关数据库设计器中,右击视图,选择“浏览”命令。
第5章 查询与视图
练习3 简单应用:
32.1(先做基1-2)、32.2、43.2(先做基1) 42.2、41.2、66.2、67.2(先做基1)、79.2 22.2、73.1(先做基1-2)
第5章 查询与视图
查询
“查询设计器”工具栏
第5章 查询与视图
查询
⑷运行查询
• 选择“查询→运行查询”命令。 • 单击常用工具栏上的“ ”按钮。
第5章 查询与视图
查询
⑸保存查询
• “文件” →“保存”
查询文件的扩展名是.QPR,
主体是相应的SQL SELECT语句。
第5章 查询与视图
第5章 查询与视图
视图 2. 有关视图的常用命令
⑴新建视图
• CREATE VIEW <视图名> AS <SELECT 语句>
⑵删除视图
• DROP VIEW <视图名> 或 DELETE VIEW <视图名>
第5章 查询与视图
练习4 简单应用:
46.1
第5章 查询与视图
查询与视图的区别
视图与查询在功能上有许多相似之处,但又有各自特点,主要区别如下:
功能不同:视图可以更新字段内容并返回数据源表,而查询文件中的记录数
据不能被修改。
从属不同:视图不是一个独立的文件而从属于某一个数据库。查询是一个独
立的文件,它不从属于任何数据库。
访问范围不同:视图可以访问本地数据源和远程数据源,而查询只能访问本
VF查询与视图
填空 1、为“成绩”表中“总分”字段增加有效性规则:“总分必须 大于等于0并且小于等于750”,正确的SQL语句是: TABLE 成绩 ALTER 总分 总分>=0 AND 总分 <=750
2、为“学生”表的“年龄”字段增加有效性规则“年龄必须在18~45岁之间” 的SQL语句是 ALTER TABLE学生ALTER年龄 年龄<=45 AND 年 龄>=18 2、在SQL语言中,用于对查询结果计数的函数是 。 3、在SQL的SELECT查询中,使用 4、使用SQL Select语句进行分组查询时,有时要求分组满足某个条件时才查 询,这时可以用 子句来限定分组。 5、设有SC(学号,课程号,成绩)表,下面SQL的SELECT语句检索成绩高于 或等于平均成绩的学生的学号。 SELECT 学号 FROM SC WHERE 成绩>=(SELECT FROM SC)
空值查询
表中值为空表示没有确定内容,当要查询的时候: repl 供应商号 with null,订购日期 with null for 职工号 ="E4 " 然后才能用IS NULL查询,考试的时候不需要设置。
当需要本仓库的职工的工资和本仓库的平均工资 进行比较时候
自身连接和嵌套查询 sele * from 职工 A where 工资>(sele avg(工资) from 职工 B where A.仓库号=B.仓库号) 自身连接:将同一关系与自身连接。 注意:应用的原因:根据出自同一个字段,值域相同 的两个进行比较。属性是“包含”与“被包含”的关 系。
5.在Visual Foxpro中,如果要将学生表S(学号,姓名,性别,年 龄)中“年龄”属性删除,正确的SQL命令是 。 A)ALTER TABLE S DROP COLUMN 年龄 B)DELETE 年龄FROM S D)ALTER TABLE S DELETE COLUMN 年 龄 D)ALTER TABLE S DELETE年龄 6.在Visual Foxpro的数据库表中只能有一个 。 A)候选索引 B)普通索引 C)主索引 D)惟一索引 7. 设有学生表 S( 学号 ,姓名,性别 , 年龄),查询所有年龄小于等于 18 岁的女同学,并按年龄进行降序生成新的表WS,正确的SQL命令是 。 A)SELECT*FROMS WHERE性别=“女”AND年龄<=18ORDER BY 4 DBSC INTO TABLE WS B)SELECT*FROMS WHERE 性别 = “女” AND 年龄 <=18ORDER BY 年龄 INTO TABLE WS C)SELECT*FROMS WHERE 性别 = “女” AND 年龄 <=18ORDER BY 年龄 DESC INTO TABLE WS D)SELECT*FROMS WHERE 性别 = “女” OR 年龄 <=18ORDER BY 年龄
vf中查询与视图
视图相关命令
❖ 创建视图的命令 格式:CRATE VIEW <视图名>
❖ 定义视图命令: CREATE VIEW <视图名> AS
❖ 利用视图输出到表 方法:复制视图SQL代码,粘贴至命令框中,并
在语句结尾处加上输出语句:INTO TABLE <表名>
视图与查询的异同点:
视图与查询在功能上有许多相似之处,但又 有各自特点,主要区别如下: ❖ 功能不同:视图可以更新字段内容并返回 源表,而查询文件中的记录数据不能被修改。 ❖ 从属不同:视图不是一个独立的文件而从 属于某一个数据库。查询是一个独立的文件, 它不从属于某一个数据库。
(1)添加数据源,选择所需的表或视图。 (2)选择在查询结果中需要的字段。 (3)设置查询记录的条件。 (4)设置排序及分组条件来组织查询结果。 (5)选择查询输出类别,可以是报表、表文件、 图表、浏览窗口和表文件等等。 (6)运行此查询。
查询设计器工具栏
“查询设计器工具栏”各按钮的功能如 下: 按钮:添加数据库表。 按钮:移去数据库表。 按钮:添加数据库表间的联接。 按钮:显示SQL窗口。 按钮:最大化上部分窗口。 按钮:确定查询去向。
视图与查询的异同点:
❖数据源不同:视图必须是在数据库中使用数 据表,而查询的数据源可以是自由表。
❖输出去向不同:视图只能输出到表中,而查 询可以选择多种去向,如表、图表、报表、标 签、窗口等形式。
❖ 使用方式不同:视图只有所属的数据库被 打开时,才能使用。而查询文件可在命令窗口 中执行。
② 在命令窗口中,键入: MODIFY QUERY <查询文件名>
查ቤተ መጻሕፍቲ ባይዱ去向
单击“查询设计器”工具栏中的“查询去 向”按钮或在系统菜单中单击【查询】|【查 询去向】命令,弹出“查询去向”对话框。
visualfoxpro数据库查询与视图
3.记录级规则主要包括记录有效性、触发器的设置和表注释。
每逢星期一才可做插入、追加、 更新和删除记录的操作:
“教授的基本工资要≥1650元,其 他职工为:
CDOW(DATE())="Monday"
学习 教程 教材 分享】GOOD
多媒体课件【友5情50≤基本工资≤3000"
GOOD STUDAY,
10
6
分享】GOOD GOOD STUDAY,
6.浏览数据库文件
浏览数据库rsgzk.dbc的命令如下:
CLOSE DATABASE ALL&&浏览前首先关闭.DBC文件
USE rsgzk.dbc
&&打开数据库文件必须指明扩展名. DBC
BROWSE
学习 教程 教材 多媒体课件【友情
7
分享】GOOD GOOD STUDAY,
(1)按照表4-7和表4-8建立部门代码表(bmdm)和增资表(zz)结构, 并输入记录数据。
(2)建立数据库rsgzk.dbc。
(3)添加表rsb.dbf、gzb.dbf、bmdm.dbf和zz.dbf 。
学习 教程 教材 多媒体课件【友情
3
分享】GOOD GOOD STUDAY,
2.用命令方式建立数据库
删除规则:是指删除父表中的记录时使用的规则,包括级联、 限制和忽略3种。
插入规则:是指在子表中插入新的记录,或更新已存在的记录 时所用的规则,包括限制和忽略2种。
学习 教程 教材 多媒体课件【友情
13
分享】GOOD GOOD STUDAY,
级联 限制 忽略
更新规则
删除规则
插入规则
当父表中的关键字 当父表的记录被删 值被修改时,系统 除时,系统相应的 用新的关键字值更 删除子表中所有相 新子表中所有相关 关记录 记录
vfp的查询和视图
二、视图的创建和使用
视图的概念:把分散在相关表中的数据通过联 接条件把他们收集到一起,构成一张“虚表”。 这张“虚表”就是视图,视图是数据库的一个组 成部分,是基于表的并且可更新的数据集合
视图与查询的区别:视图除了可以用来查询数 据之外,还可以当作表来使用,可以作为数据源, 也可对查询出来的数据进行修改并送回源表中
❖多表查询的创建:步骤 例题 ▪ 若有2张以上的表,在添加时一定要注意先后次 序,“纽带表”要放在两张“父表”之间 ▪ 若已进行了永久性关系的设置,则无须进行联接 ▪ 修改联接条件可在“查询设计器”—“联接”卡 片中进行 ▪ 联接条件和筛选条件类似,都是选出符合条件的 记录;不同的是筛选是将字段值和筛选值进行比 较,而联接条件是将一张表中的字段值与另外一 张表中的字段值进行比较
❖查询时会考到的最难的程度如下例:
查询信息管理系中所有成绩在480分以上,并且各门课程的成
绩不低于70分的学生。要求在查询的结果中包含学号,姓名, 总分,均分,最低分,并按照总分从高到底排列
❖ 一部分查询的练习 1. 查询学生的学号,姓名,系名,总分和平均分, 按照系名升序排序,同一个系的学生按照总分 降序排序。 2. 查询每个系每门课程的总分和平均分,要求输 出课程名,课程代号,系名,每个系的平均成 绩和总成绩,按课程代号升序排序 3. 查询各个系每位教师的课时数,要求输出系名, 工号,姓名,课时数,并按系名升序排序,同 一个系的教师按照工号升序排序 4. 查询计算机科学系各位教师的课时数,要求输 出工号,姓名,系名,课时数,并按工号降序 排序,并且将查询信息保存为表,表名为:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例题:创建视图
建立一个名为借书查询的视图,显示读者 的读者证号、姓名、借阅日期、借阅图书的书 名。要求查询结果按读者的读者证号升序排列, 同一读者按借阅日期从早到晚排列。
通过命令创建视图
CREATE VIEW [<视图>] AS <以命令方式创建视图
CREA SQL VIEW 借书查询; AS SELECT 读者.读者证号,读者.姓名,借阅.借阅日期,图书.书名; FROM 读者 INNER JOIN 借阅 INNER JOIN 图书; ON 图书.条形码=借阅.条形码 ON 读者.读者证号=借阅.读者证 号; ORDER BY 读者.读者证号, 借阅.借阅日期
注意
查询设计器只能建立一些比较规则的查询,复杂 的查询无法建立
5.2 视图
5.2.1 视图的概念
视图与查询一样,是从数据表中导出的虚拟表。 它本身并不存储数据,所定义的是一种对数据表 中数据的查询规则。此外,视图和查询的创建过 程也非常相似。
视图的概念
视图和查询的区别: 首先,查询是独立存在的文件,而视图是属于 数据库的对象。 其次,查询可以定义各种不同的查询去向,而 视图只能在浏览窗口中显示。 再次,在查询中无法修改数据。而在视图中, 可以通过修改数据来更新所对应的源数据表。
查询去向
图形:将查询结果用于GRAPH。GRAPH是包含 在VFP中的一个独立的应用程序,可以用统计图 形的形式显示数据 屏幕:将查询结果显示在窗口工作区。若用户 要将查询结果打印出来或产生一个文本文件, 可在次级输出中设置。
查询去向
报表:将查询结果作为报表文件的数据来源。使 用此选项,必须先建立一个报表文件,且报表文 件中的表达式与查询的输出字段的名称相吻合。 标签:将查询结果作为标签文件的数据来源。使 用此选项,必须先建立一个标签文件,且标签文 件中的表达式与查询的输出字段的名称相吻合。
指定查询的分组方式
运行查询
查询
运行查询
“常用”工具栏的
设置查询杂项
5.1.3 查询与SQL语句的对应
查询与SQL对应
“查询”工具栏的
查询
查看SQL
查询与SQL对应
在查询中选择所需的数据表,对应于FROM短语。 “字段”选项卡对应于SELECT短语,用于指定要 查询的表达式。 “联接”选项卡对应于JOIN ON短语,用于指定多 表联接的条件。 “筛选”选项卡对应于WHERE短语,用于指定查 询条件。
5.1.4 查询的保存、使用和修改
查询的保存
文件(F)
保存(S)
“常用”工具栏的保存按钮
在项目管理器中运行查询
通过菜单运行查询
程序
运行
通过命令执行查询
DO <查询文件名> 在命令中要指定查询文件的主名和扩展名, 如DO 精装书借阅.QPR。
在项目管理器中修改查询
展开“数据”选项卡的“查询”,选择要执行的查询文 件,单击“修改”按钮或选择“项目”菜单下的“修改 文件”命令。
例题:创建查询
建立一个查询,显示精装书的条形码、书 名和借阅次数,按借阅次数从多到少显示,
通过项目启动查询设计器
在项目管理器的“数据”选项卡中,选择“查询 ”选项,单击“新建(N)”按钮。
通过菜单启动查询设计器
文件(F)
新建(N)
通过命令启动查询设计器
CREATE QUERY <查询文件名>]
通过菜单修改查询
选择“文件”菜单下的“打开”命令,打开“打开”对话框。 在“打开”对话框中选择查询文件,单击“确定”按钮。
通过命令修改查询 MODIFY QUERY <查询文件名>
5.1.5 定义查询去向
查询去向
“查询”工具栏的
查询
查询去向
查询去向
浏览:将查询结果输出至浏览窗口。窗口中的 查询结果是只读的,无法在其中修改数据。 临时表:将查询结果存储在一个用户命名的临 时数据表中。该临时表是只读的,且不会保存 在磁盘中。当用户关闭该表时,该表将从内存 释放,无法再次打开。 表:将查询结果存储到一个磁盘上的数据表文 件,用户可指定表文件名和保存位置。
查询的概念
通过运行查询文件,用户可以反复使用查询结 果。也可以将其应用于VFP的表单、报表、菜 单等对象。
5.1.2 查询的建立
查询的建立
指定要查询的数据表。 指定要查询哪些字段,或针对哪些字段进行统 计运算,及这些结果的输出顺序。 指定查询条件。 指定查询结果的排序方式。 指定查询的分组方式。 指定查询结果的输出目的地。
打开查询设计器,创建查询文件
指定要查询的表
指定要查询的表
由于数据库中已建立两个数据表的永久性关联, 系统会自动设置两个数据表的联接条件。 若添加的两个表之间不存在永久性关联,系统将 打开“连接条件”对话框。
指定要查询的表
指定要查询的字段和表达式
指定多表连接的条件
指定查询的条件
指定查询结果的排序字段及方式
视图的概念
在VFP中,视图分为本地视图和远程视图。 本地视图从本计算机的数据表或其他视图中提 取数据,而远程视图从支持ODBC(开放数据库 连接)的数据源(如SQL Server)中提取数据。
5.2.2 视图的建立
通过项目启动视图设计器
在项目管理器的“数据”选项卡中,将要建立视 图的数据库展开,选择“本地视图”选项,单击 “新建(N)”按钮。
在数据库中启动视图设计器
在数据库设计器的空白处右击鼠标,在快捷菜单中 选择“新建本地视图”命令。 单击“数据库设计器”工具栏的“新建本地视图” 按钮 选择“数据库”菜单下的“新建本地视图”命令。
通过菜单启动视图设计器
文件(F)
新建(N)
通过命令启动视图设计器
CREATE VIEW <视图名>]
查询与SQL对应
“排序依据”选项卡对应于ORDER BY短语,用于指 定排序的字段和方式。 “ 分 组 依 据 ” 选 项 卡 对 应 于 GROUP BY 短 语 和 HAVING短语,用于指定分组的表达式和分组后的 条件。 “杂项”选项卡用于指定是否显示重复记录(对应 于DISTINCT短语),以及是否显示排列在前面的记 录(对应于TOP短语)。
5查询和视图
5.1 查询
5.1.1 查询的概念
查询的概念
查询是从指定的表或视图中提取满足条件的记录, 按照用户设所置的输出类型定向输出查询结果。 通常,可以通过查询设计器来建立查询文件。查询 文件以QPR为扩展名,独立存放在磁盘上。它实际 是一个由SQL SELECT语句和输出定向有关的语句 组成的文本文件,用户也可以使用文本编辑工具( 如记事本)来编辑它。