




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章 数据库与表的创建和使用3.1 数据库的概述3.1.1 数据库的组成数据库的基本组成 数据库由一个以上相互关联的数据表组成,可以包含一个或多个表、视图、到远程数据源的连接和存储过程。数据库表:一张数据库表只能属于一个数据库,数据库表与数据库之间通过双向链接实现的;前链(在数据库中),后链(在数据库表中) 视图(view):一个保存在数据库中的、由引用一个或多个表、或其他视图的相关数据组成的虚拟表,可以是本地的、远程的或带参数的。 连接(Commection):保存在数据库中的一个定义,指定数据源的名称存储过程(stored procedure):是保存在数据库中的一个过程。该过程能包含一个用户自定义函数中的任何命令和函数。 3.1.2 数据字典(自学)3.2 数据库的创建、打开、关闭 数据库文件: 扩展名为 .DBC 创建数据库时系统 数据库备注文件: 扩展名为 .DCT自动生成3个文件 数据库索引文件: 扩展名为 .DCX3.2.1 数据库的创建1. 菜单操作方式创建数据库(菜单,工具栏,项目管理器)2. 命令方式创建数据库 Create database 数据库名|? 3. 数据库设计器及“数据库”菜单 Modify database 数据库名 &打开数据库设计器3.2.2 数据库的打开、关闭(1) 打开数据库:方法1:菜单操作: 方法2:命令方式: Open database 数据库名 exclusive/shared 注意:可以根据需要打开一个或多个数据库,但所有打开的数据库中只有一个是当前数据库。 Set database to 数据库名 &设置当前数据库( 2 ) 关闭数据库: 1)“项目管理器”选定数据库进行关闭2)从命令窗口中输入命令: close database & 关闭当前数据库,并同时关闭其表 close database all & 关闭所有打开的数据库close all & 关闭所有被打开的数据库,项目管理器 注意: 1) 关闭了数据库表不等于关闭了数据库,但关闭了数据库则其中的数据表被同时关闭; 2) 用鼠标关闭了数据库设计器窗口并不能代表关闭数据库。( 3 ) 删除数据库: 1)资源管理器: 2)命令方式:delete file 数据库名 3)项目管理器:3.3 表的创建与使用3.3.1 表结构的概述表(数据表):是指存放在磁盘文件中的一张二维表。自由表:不属于任何数据库的表。数据库表:包含在一个数据库中的表,只属于一个数据库。表文件名:表名可以由字符、数字或下划线组成,但不可用A-J中的单个字母做文件名,系统自动给出的扩展名为 .DBF。备注文件名:当表中有备注型或通用型字段时,系统自动生成与所属数据表的表名相同、扩展名为:.FPT的文件名。表结构:存储表记录的公共结构。(就是指一张表的表头结构,即字段的属性)。 表结构的基本组成:包括:字段名、数据类型、字段宽度、小数位数、是否支持空值u 字段名:即每个字段的名字,必须以字符开头,可由字符、数字、下划线组合而成,字母大、小写无区别,但其中不许有空格或其它字符。自由表的字段名最多由10个字符组成,数据库表的字段名支持长名,最多可达128个字符。如果从数据库中移去一个表,那么此表的长字段名将被截短成 10 个字符。u 数据类型:指该字段的数据特征(C , Y, D, T, L, N, M, G)。u 字段宽度:指该字段所能容纳数据的最大字节数。u 小数位数:指数值型数据将保留几位小数。此时的字段宽度 = 整数位数+1+小数位数。u NULL 值(空值):用来指示记录中的一个字段“有或没有”数据的标识,NULL不是一种数据类型或一个值,NULL不等同于零或空格。一个 NULL 值不能认为比某个值(包括另一个 NULL 值)大或小,相等或不同。VFP 6.0表中字段的数据类型 字段类型代号说明字段宽度使用示例字符型C字母、汉字和数字型文本每个字符为1个字节,最多可有 254 个字符学生的学号或姓名, 8199101 或 李立货币型Y货币单位8 个字节工资, $1246.89日期型D包含有年、月和日的数据8 个字节出生日期, 02/25/2000日期时间型T包含有年、月、日、时、分、秒的数据8 个字节上班时间, 02/25/2000 9:15:15 AM逻辑型L“真”或“假”的布尔值1 个字节课程是否为必修课, .T. 或 .F.数值型N整数或小数在内存中占 8 个字节;在表中占1 至20个字节考试成绩, 83.5通用型GOLE 对象在表中占 4 个字节图片或声音备注型M不定长度的一段文字在表中占 4 个字节学生简历3.3.2 表结构的创建1. 创建表结构:其实就是设计字段的基本属性。可以使用表设计器、SQL命令来创建表结构。(1)使用表设计器创建表结构步骤:从文件菜单中单击新建 在新建对话框中选择表并单击新文件 在创建对话框中给出文件名并确定所需的保存位置 在表设计器对话框中逐个输入所需字段(用或鼠标换行),全部字段输入完成后单击确定。(2)使用 CREATE TABLE - SQL命令该命令的一般格式为:CREATE TABLE |dbf (字段名1 字段类型(字段宽度,小数位数),字段名2 字段类型(字段宽度,小数位数)例:1.CREATE TABLE xscj(xh c(8),xm c(6),xb c(2),;cj n(5,1),ksrq d)2. CREATE TABLE XS(GH C(6) NOT NULL,XM C(8) NULL,CSRQ D NULL)2. 表结构的修改(1) 用表设计器修改A. 用项目设计器调出表结构设计器:B. 用命令调出表结构设计器: USE MODIFY STRUCTURE (2) 使用 ALTER TABLE - SQL命令功能命令格式示例添加字段ALTER TABLE xscj ADD COLUMN kcmc C(14)修改字段ALTER TABLE xscj ALTER COLUMN kcmc C(14)重命名字段ALTER TABLE xscj RENAME COLUMN kcmc TO kc删除字段ALTER TABLE xscj DROP COLUMN kc 举例:3.3.3 字段属性与表属性1. 字段的扩展属性1) 字段的标题与注释:增强表的可读性字段标题在浏览表时用此名称代替意义不够直观的字段名(不要加引号)字段注释使字段具有更好的可读性,进一步的解释字段的意思(不要加引号)举例:a)为ts表设置flh字段的标题为“分类号”;b) 为ts表设置flh字段的注释为“flh为图书的分类号”;2) 字段的显示属性:用来指定输入和显示字段时的格式格式确定字段内容在被显示时的样式(A,D,K,T,!)(T!)输入掩码指定字段中输入数据的格式(即所输入的任何内容均显示成此符号)(A,X,. ,9)举例:a)为ts表设置flh字段的有关属性,使该字段中输入的字母均为大写字母;b)为表的gh字段设置输入掩码,使输入值为开头第一个为字母,其他为数字字符c)为xs表设置xh字段的有关属性,使在输入和显示xh时其前导空格自动删除;3) 字段的默认值向表中添加新记录时,为字段所指定的最初的值称为该字段的默认值,在设置字段默认值时,默认值必须是一个与字段数据类型一致的表达式或一个值举例:a) 为xs表设置xb字段的默认值为“男”;4) 字段的有效性规则和有效性信息:仅对修改对应字段值是激活该规则规则用来控制输入到字段中的数据的取值范围,或所输数据必须满足的条件,该规则是一个逻辑表达式信息当所输数据违反(不满足)规则时,系统提示出错的消息,该信息为一个字符型表达式(必须要加引号)举例:a)为ts表的cs字段设置字段的有效性规则和有效性说明信息,要求:其值必须大于0;b)为xs表的xb字段设置字段的有效性规则,要求性别为“男”或“女”c)为cj表的cj字段设置字段的有效性规则,要求cj大于等于0并且小于等于1005) 字段的默认控件类:作用是指定用“表单向导”生成表单或从数据环境中将字段拖放到表单上时,与该字段相应的控件类。举例:a)为ts表设置cs字段的有关属性,使该字段从表单的数据环境中拖放到表单上时,生成相应控件为微调框控件;2. 数据库表的表属性:长表名,表注释,记录验证规则及信息,触发器等1) 长表名与表注释长表名默认情况下,表名为表文件名,对数据库表,允许再定义一个表名(长表名),最大长度为128个字符。表注释表的说明信息,对表的进一步解释,与字段注释一样,不需要加引号举例:a)为ts表设置长表名为“tushubiao”;2)记录有效性规则和信息:在改变记录值时激活该规则有效性规则用来校验记录的多个字段之间的关系是否满足某种条件,该规则为逻辑表达式,如果满足则可以修改记录,否则不可以修改有效性信息如果修改记录时违反(不满足)该规则时,系统提示出错的信息,有效性信息为一个字符型表达式,必须要加引号举例:a) 为ts表添加一个数据类型,字段宽度与cs字段相同的字段,字段名为jccs,并设置其标题为“借出册数”,并设置ts表的记录级有效性规则及其说明信息,要求:jccs字段值不能大于cs字段值;b)为js表设置记录有效性规则,要求教师的csrq(出生日期)小于gzrq(工作日期)3)表的触发器:触发器是绑定在表上的逻辑表达式,当表中的任何记录被指定的操作命令(插入,更新,删除)修改时,在进行了其他所有检查之后被激活插入触发器当所插记录符合此规则时,才可以插入到表中(必须为逻辑表达式)更新触发器当修改后的记录符合此规则时,才可以进行修改(必须为逻辑表达式)删除触发器当待删记录符合此规则时,才可以被删除掉(必须为逻辑表达式) 逻辑表达式的构造:1)将否定条件转化为肯定条件,构造符合肯定条件的表达式 2)取特殊值进行试探并修改该逻辑表达式 举例:a)为ts表设置更新触发器,要求:分类号(flh)字段的值为空格字符串时不可更新;b)为xs表设置删除触发器,要求:xh(学号)前两位在“00”到“05”之间的可以删除c)设置xs表的插入触发器,禁止插入3.3.4 表的打开与关闭1. 工作区工作区:指用来标识一张打开的表的区域。每个工作区都有一个编号(132767(前十个工作区号也可以用字母AJ表示),在VFP系统启动后,系统默认当前工作区号为1。一个工作区在某一时刻只能打开一张表,一张表可以在多个工作区中多次被打开,同一时刻可在多个工作区打开多张表。当前工作区:正在使用的工作区。VFP系统启动后,系统默认当前工作区号为1,可用SELECT命令把任何一个工作区设置为当前工作区。 SELECT |Select n &选择工作区号为n的工作区为当前工作区Select 0 &选择没被使用的最小工作区号的工作区为当前工作区 Select xs &选择xs表所在的工作区为当前工作区2数据工作期窗口 数据工作期是当前数据动态工作环境的一种表示。 窗口菜单数据工作期3表的打开 只有表打开了,才能访问其中的数据 (1)界面方式打开表l 文件菜单中打开l 数据工作期中打开l 项目管理器中打开(2)使用命令方式打开表 Use tablename In nworkarea /ctablealias Again Alias bm Noupdate表的别名:在工作区中打开表时为该表所定义的名称。可以自定义别名,否则系统默认就以表名作为别名。强行指定工作区(不一定是当前工作区):要操作非当前工作区中的表,可以把其工作区设置为当前工作区,或在命令中强行指定工作区。 命令格式: IN | In 0 In 5In 别名 4几个常用的函数 ALIAS(工作区号)函数:测试指定工作区中的表的别名,无参数时指当前工作区表的别名。? alias():返回当前工作区中表的别名。? alias(n):返回工作区号为n的工作区中表的别名。 SELECT(别名)函数:测试指定别名的表所在的工作区号,无参数时指当前工作区的区号。Select(0)=select():返回当前工作区号。Select(1):返回当前未被使用的最大工作区号。Select(“表别名”)返回该表所在的工作区号。5表的关闭(1)通过界面关闭表数据工作期(2)使用不带表名的USE命令关闭表USE &关闭当前工作区中的表USE IN | &关闭指定工作区中的表CLOSE TABLES ALL & 关闭所有打开的表CLOSE DATABASE &关闭当前数据库,顺便关闭了其表CLOSE DATABASE ALL &关闭所有打开的数据库CLOSE ALL & 关闭所有的数据库,表和索引6表的独占与共享使用表的独占:一张表只能被一个用户打开,默认状态以独占方式打开。表的共享:一张表可以被多个用户同时打开。设置方式:(1) 系统默认打开方式通过工具菜单中的选项数据来设置(2) 命令设置SET EXCLUSIVE OFF & 默认打开方式为共享SET EXCLUSIVE ON & 默认打开方式为独占或强行打开:USE cj SHARED & 以共享方式打开cj表USE cj EXCLUSIVE & 以独占方式打开cj表3.3.5 表记录的处理1 记录的输入(1) 表结构创建后立即输入(备注型字段,通用型字段的输入): (2) 在浏览窗口中追加记录(表处于浏览状态):第一种:利用“显示/追加方式”可以追加多条记录。第二种:利用“表/追加新记录”可以追加一条空记录,并且处于编辑状态等待用户输入数据。(3) 使用INSERT-SQL命令该命令的一般格式为:INSERT INTO (字段名1,字段名2 ) VALUES(表达式1,表达式2 )例:INSERT INTO xscj(xh,xm,cj) VALUES(81991001, 张良, 85.5)(4) 使用APPEND 与APPEND FROM命令追加记录APPEND BLANK IN 工作区号/别名 APPEND FROM 文件名Field 字段列表For 条件Delimited/xls2浏览浏览窗口使用BROWSE 命令浏览表,通过不同的子句来实现对特定记录的浏览。BROWSE FIELDS fieldlist FOR expression1 FREEZE 字段名 NOAPPEND NODELETE NOMODIFY TITLE expression23记录的筛选(1) 利用工作区属性/数据过滤器进行筛选记录(2) set filter to 条件 举例:筛选性别为男的同学4限制对字段的访问(1) 利用工作区属性/字段筛选进行筛选部分感兴趣的字段(2) SET FIELD TO 字段列表补充VFP命令中的常用子句 1) 范围子句子句格式功能ALL表示对表文件的全部记录进行操作NEXT n表示对从当前记录开始的共n个记录进行操作, n为正整数RECORD n指明操作对象是表文件的第n号记录REST对从当前记录起到文件结尾的全部记录进行操作2) FOR子句:用于指明进行操作的条件。格式: FOR 例如: list NEXT 6 FOR cj 853) FIELDS 子句用于指明当前的操作涉及到表文件的哪些字段。格式:BROWSE FIELDS 字段名1,字段名2例如:BROWSE FIELDS xh,xm,cj5 记录的定位(1)记录的指针及记录的三个控制标志 记录开始标志:位于第一个记录之前,表结构之后记录指针标志:指向当前记录。记录结束标志:位于最后一个记录之后。常用的函数及功能:BOF():测试记录指针是否位于记录开始标志。EOF():测试记录指针是否位于记录结束标志。RECNO():测试记录指针所指的记录的记录号。RECCOUNT():表中记录的总条数记录指针可以理解为保存当前记录号的变量,它的初始值总是1,不可能为0或负数,最大值是表中记录总数+1。XS表中没有记录,现在打开XS表,填写表格情况:Bof()Eof()Recno()Recount()刚打开.t.t.10Skip 1.t.t.10skip.t.t.10XS表中有20条记录,现在打开表,填写下表:Bof()Eof()Recno()Recount()刚打开.f.f.120Skip 1.t.f.120Go bottom.f.f.2020Skip.f.t.2120(2) 记录的定位方式绝对定位:是指把指针移到指定的位置。(go)相对定位:是指把指针从当前位置开始,相对于当前记录向前或向后移动若干个记录位置。(skip)条件定位:是指按一定的条件在整张表或表的某个指定范围中查找符合该条件的记录。(locate)通过菜单进行定位 :从表菜单中选择转到记录:记录号实现绝对定位 定位 实现条件定位通过命令进行定位记录的定位 命令格式功能绝对定位Go/goto topIN 工作区将记录指针定位到表第1条记录Go/goto bottom IN 工作区将记录指针定位到表最后1条记录Go n IN 工作区将记录指针定位到指定的n号记录 相对定位Skip n将记录指针从当前记录向上或向下移动n个条件定位Locate for 范围按顺序搜索表, 直到找到满足指定条件的第1个记录,需要再找,用continue命令6. 记录的值的修改一张表用非只读方式打开后,即可通过菜单在浏览窗口(或编辑窗口)中或从命令窗口中用命令直接对其记录进行编辑、修改和删除。(1) 界面方式修改记录的值 修改记录:从表菜单中选择替换字段 在替换字段对话框中选择待替换的字段并构造出替换表达式及替换条件 替换。(2) 命令方式修改记录的值UPDATE-SQL 命令(不需事先打开表)。格式: UPDATE SET 字段1 = 表达式1 ,字段2 = 表达式2 ;WHERE 条件表达式 REPLACE命令(必须先打开表) 格式:replace 字段1 with 表达式1 additive, 字段2 with 表达式2 additive scopefor 表达式3举例:放大学生成绩7. 记录的删除与恢复 删除记录:从表菜单中选择删除记录 在删除对话框中选择删除范围和删除条件 单击删除按钮 从表菜单中选择彻底删除 在消息框中单击是。删除记录包括两步: 标记要删除的记录和彻底删除带删除标记的记录 恢复带删除标记的记录:从表菜单中选择恢复记录 在恢复记录对话框中选择作用范围和条件 单击恢复记录按钮。 删除记录: 1) DELETE-SQL 命令(不需事先打开表)。格式: DELETE FROM WHERE 条件表达式2) DELETE命令格式:delete scope for 表达式例: DELETE FROM xscj WHERE cj60(3) 彻底删除记录pack和zap的使用和区别。(4) 对带有删除标记的记录的访问set deleted on/offon:忽略带有删除标记的记录,不访问。Off:照常访问记录。8数据的复制(将已打开的表中数据复制到文件中(表,文本,电子表格) Copy to 文件名 field 字段列表 范围 FOR 条件 SDF/XLS6数据的统计(对表中满足有关条件的记录进行统计 ) count scopefor exp1 to varnamesum 求和字段scopefor exp1 to varnameaverage 求平均字段scopefor exp1to varname3.3.6 表的索引1. 基本概念(1)记录物理顺序:即表中记录的存储顺序。用记录号表示。(2)记录逻辑顺序:表打开后按某个(些)字段值进行排序时的处理顺序。(3)索 引:是根据索引关键字(即索引表达式)的值进行逻辑排序的一组指针,它是由一系列记录号组成的一个列表,提供对数据的快速访问。索引文件有索引序号和对应于索引序号的表的记录号组成。表文件中的记录被修改或删除时,索引文件可自动更新。(4)索引关键字(索引表达式):用来建立索引的一个字段或几个字段组成的表达式。注意:1)用多个字段建立索引表达式时,表达式的计算结果将影响索引的结果;2)不同类型字段构成一个表达式时,必须转换数据类型。3)特别注意对日期等数据建立索引。 (5)索引标识(索引名):即索引关键字的名称。必须以下划线、字母或汉字开头,且不可超过10个字。(6)索引类型:主索引、候选索引、普通索引、唯一索引。u 候选索引: 以表的候选关键字为索引表达式而创建的索引。在指定的关键字段或表达式中不允许有重复值的索引。在数据库表和自由表中均可为每个表建立一个或多个候选索引。u 主索引: 从表的候选索引中选取一个作为该表的主索引。组成主索引关键字的字段或表达式,在表的所有记录中不能有重复的值。主索引只适用于数据库表。自由表中不可以建立主索引;数据库中的每个表可以且只能建立一个主索引。u 普通索引:索引表达式的值允许出现重复。在一个表中可以加入多个普通索引,数据库表和自由表都可以创建一个或多个普通索引。 u 唯一索引: 参加索引的关键字段或表达式在表中可以有重复值,但在索引文件中重复的值(记录号)仅存储其中的第一个。2. 索引文件的种类:独立索引文件,复合索引文件索引文件种类特征关键字数目结构复合索引文件.CDX使用和表文件名相同的基本名,随表的打开自动打开。可以看成表结构的一部分。多关键字表达式,称为标识。非结构复合索引文件.CDX必须明确地打开,使用和表名不同的基本名。其中不能创建主索引多关键字表达式,称为标识。独立索引文件.IDX必须明确地打开,文件的基本名由用户定义。一般作为临时索引文件。单关键字表达式。结构复合索引文件的特点:.在创建索引标识时自动创建。.在打开表时自动打开。.在同一索引文件中能包含多个排序方案,或索引关键字。.在添加、更改或删除记录时自动维护。 3. 创建结构复合索引(1)表设计器方式 :打开表文件 从显示菜单中选择表设计器 在表设计器中单击索引 输入索引名并选择索引类型 选择索引的方向(按升序或降序排列记录) 在表达式框中输入作为排序依据的索引关键字 在筛选框中输入筛选表达式 单击确定,完毕。(2) 命令方式INDEX ON TAG FOR 条件 ASCENDING | DESCENDING UNIQUE|CANDIDATE说明:ASCENDING指定按升序排序,DESCENDING指定按降序排序,省略为按升序排序;UNIQUE指定唯一索引,CANDIDATE候选索引,省略为指定普通索引; 注意:1)备注型字段和通用型字段不能作为索引关键字段;2)不要建立无用的索引,以免降低系统性能;3)及时清理已无用索引标识,提高系统效率。4)在复合索引文件中存在多个索引,某一时刻只有一个索引对表起控制作用。举例:1为GZ表创建一个普通索引gzjx,要求按jbgz降序排列。2为JS表创建一个普通索引xdhzc,要求先按系代号(xdh)字段排序,相同时按职称代号(zcdh)字段排序。3为XS表创建一个普通索引xbrq,要求先按性别(xb)字段升序排序,性别相同再按出生日期(csrq)字段降序排序4. 索引的修改和删除修改: 打开表设计器,在索引对话框中进行所需修改;或 用命令重新建立一个相同标识名而索引表达式不同的索引(进行覆盖)。删除: 打开表设计器,在索引对话框中删除不需要的索引标识即可;5. 索引的使用: 主控索引:打开一张表的同时,可以打开多个索引,但要决定显示或访问表中记录的顺序,还要将一个索引设置为主控索引,即某一时刻只有该索引对表的显示和访问顺序进行控制。(1) 打开表的同时指定主控索引USE 表名 ORDER 索引标识 ASCENDING/DESCENDING(2) 打开表后再设置主控索引USE 表名SET ORDER TO 索引标识 ASCENDING/DESCENDING(3) 利用索引快速定位记录表建立了索引后,可以基于索引关键字,使用SEEK命令进行记录的快速定位。 SEEK 表达式的值 ORDER 索引标识 ASCENDING/DESCENDING 直接设置主控索引 USE 表名 ORDER 索引标识 SEEK 表达式的值3.3.7补充几个常用的函数1. select() :测试工作区号 select(0)=select(): 返回当前工作区号select(1):返回当前未使用的最大工作区号select(“别名”):返回该表所在的工作区号2. used():测试一张表的别名是否被使用used(n) :指定的工作区中是否有表打开;used():默认为当前工作区中是否有表打开;used(“别名”):测试表的别名是否已被使用;3. field():返回已打开表的指定序号的字段名 field( n, nworkarea|ctablealias)n表示表结构建立时的字段顺序号4. fcount():用于返回以打开的表的字段个数 fcount(nworkarea|ctablealias)5. delete():用于测试表的当前记录是否带有删除标记,无参数。3.4 永久性关系与参照完整性在数据库中,可以为存在一对多关系的两个表创建永久性关系,且基于永久性关系,可以创建这两个表之间的数据完整性规则在关系模型中实体之间的联系有三种:一对一关系,一对多关系,多对多关系,它们对应于关系数据库中表之间的三种关系: 一对一关系:表之间的一种关系,在这种关系中,主表中的每一个记录只与相关表中的一个记录相关联。(班级与班长 ) 一对多关系:表之间的一种关系,在这种关系中,主(父)表中的每一个记录与子表中的多个记录相关联(每一个主关键字值在相关表中可出现多次)(班级与学生)。1永久关系:是数据库表之间的一种关系,不仅运行时存在,而且一直保留。表之间的永久关系是通过表的索引建立的。2创建表间的永久关系: 在数据库设计器中,选择想要关联的索引名然后把它拖到相关表的索引名上,所拖动的父表索引必须是一个主索引或候选索引。建立好关系后,这种关系在数据库设计器中会显示为一条连接两个表的直线。注意:需先建立索引然后才能建立永久关系。如果主表与子表之间为一对多关系,主表索引必须是一个主索引或候选索引,子表中以主表的主关键字作为该表的外部关键字建立普通索引,如果是一对一关系,则在子表中一与主表相同的关键字建立主索引或侯选索引。3删除表间的永久关系: 在数据库设计器中,单击两表间的关系线。关系线变粗,表明已选择了该关系,按下 delete 键。 4编辑关系:单击所需关系线,右击鼠标,从快捷菜单中选择编辑关系,在编辑关系对话框中改选其它相关表索引名或修改参照完整性规则。 5参照完整性(RI): 是用来控制数据的完整性,尤其是控制数据库中相关表之间的主关键字和外部关键字之间数据一致性的规则。Visual FoxPro使用用户自定义的字段级和记录级规则完成参照完成性规则。参照完整性规则更新规则(当父表中记录的关键字值被更新时触发)删除规则(当父表中记录被删除时触发)插入规则(在子表中插入或更新记录时触发)级联用新的关键字值更新子表中的所有相关记录删除子表中所有相关记录限制若子表中有相关记录,则禁止更新若子表中有相关记录,则禁止删除若父表中不存在匹配的关键字值,则禁止插入忽略允许更新,不管子表中的相关记录允许删除,不管子表中的相关记录允许插入3.5 有关数据库及其对象的常用函数1 .DBC()函数与DBUSED()函数 DBC():返回当前打开的数据库的完整文件名,该函数无需参数DBUSED():返回指定的数据库文件是否已经打开2 .dbgetprop()函数:查看数据库属性:命令格式: dbgetprop(cName, cType, cProperty)cname:指定数据库名,字段名,表名,或视图名ctype:指定对象名的类型(database,table,field,view)cproperty:指定属性名称(caption,comment,defaultvalue,ruleexpression,primarykey,)dbgetprop(xs.xh,field,caption)3 .dbsetprop()函数:设置数据库属性:dbsetprop(cName,cType,cProperty,ePropertyValue)epropertyvalue:指定属性的设定值。例: dbsetprop(xs.xh,field,caption,学号)dbsetprop(cj.xh,field,comment,cj.xh与xs.xh对应起来)历年考题:1表(table)是存储数据的容器。在下列有关VFP表的叙述中,错误的是_。A.每个表最多只能包含200多个字段B.新建一个表后,一般会生成13个文件C.自由表与数据库表在数据存储功能上是相同的,但在数据管理与控制功能上有差别D.自由表添加到数据库中变成数据库表,而数据库表移出数据库则变成自由表2在VFP中,对于数据库表来说,如果将其移出数据库(变成自由表),则该表原设置或创建的_ _仍然有效。A.候选索引 B.长表名C.记录有效性规则 D.触发器3在创建表索引时,索引表达式可以包含表的一个或多个字段。在下列字段类型中。不能直接选作索引表达式的是_24_。A.货币型 B.日期时间型C.逻辑型 D.备注型4在VFP中,与表操作相关的系统函数有多个,例如EOF()、BOF()、USED()等。用于返回当前选定工作区中已打开表的字段数目的函数是_ _。5下列程序段中的后三条命令,可用一条功能等价的命令来实现,这条命令是_ _ _。 SET TALK OFF SELECT 1 USE xs SELECT 0 USE cj SELECT xs6在VFP中,系统规定:除了自由表的字段名、表的索引标识名至多只能有_ _个字符以外,其余名称的长度可以长达100多个字符。7有如下一段程序: CLOSE TABLES ALL USE XS SELE 3 USE JS USE KC IN 0 BROW 上述程序执行后,浏览窗口中显示的表及当前工作区号分别是 _ 。 KC 、 2 KC 、 3 JS
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年医疗健康行业人工智能技术应用前景研究报告
- 2025年文化创意产业文化创意产品市场前景分析报告
- 2025年智能化交通系统发展趋势与市场前景研究报告
- 常山县2025年浙江衢州常山县“英才荟”事业单位紧缺急需人才招聘18人(事业编制)笔试历年参考题库附带答案详解
- 2025年区块链技术在物流行业的应用前景研究报告
- 天津市2025天津市地质矿产勘查开发局所属事业单位第二次招聘(含高层次人才)29人笔试历年参考题库附带答案详解
- 国家事业单位招聘2025国家海洋信息中心考察对象笔试历年参考题库附带答案详解
- 国家事业单位招聘2025中国大洋矿产资源研究开发协会(中国大洋事务管理局)招聘应届毕业生拟笔试历年参考题库附带答案详解
- 南宁市2025广西南宁市良庆区经济贸易和信息化局招聘1人笔试历年参考题库附带答案详解
- 2025葛洲坝集团(西藏)建设投资有限公司招聘7人笔试参考题库附带答案详解
- 建筑幕墙知识培训课件
- 人教版高中地理必修第一册第一章宇宙中的地球第一节地球的宇宙环境练习含答案
- 星地激光通信技术-洞察分析
- 诊所中药饮片清单汇编
- 《室外管网工程施工》课件
- 餐饮外卖窗口改造方案
- 糖尿病足报告
- 国有企业战略使命评价制度
- 吊车施工专项方案
- 合规风险管理制度
- 病毒课件教学课件
评论
0/150
提交评论