《[IT认证]VFP笔试复习资料.doc》由会员分享,可在线阅读,更多相关《[IT认证]VFP笔试复习资料.doc(57页珍藏版)》请在三一办公上搜索。
1、第1章 数据库系统及VFP概述一、关系和关系模型数据库系统(DBS)由数据库(DB)、数据库管理员(DBA)和有关软件组成。 PS:数据库管理系统 缩写:DBMS数据库系统的特点:采用数据模型表示复杂的数据结构。(数据冗余减少,可实现数据共享)有较高的数据独立性。提供了数据安全性、完整性等控制功能,以及对数据操作的并发控制、数据的备份与恢复等功能。为用户提供了方便的用户接口。1数据模型的种类 层次模型、网络(状)模型、关系模型2关系模型(1)关系是以二维表结构来表示实体集及其实体间的联系。一个关系就是一张二维表。(2)E-R模型(“实体-联系”模型)及其三个基本属性:实体、联系、属性 关系模型
2、是用二维表格的结构形式来表示实体间的联系。二维表中的列称为字段(关系中称“属性”);行称为记录(关系中称“元组”);一张二维表称为一个关系(实体间的联系)。 关系模型通过一系列的关系模式来表述数据的结构和属性,它一般有三个组成部分:数据结构、数据操作、完整性规则。(3)关系的规范化(参见P8) 关系规范化的条件可以分为几级,每级称为一个范式(nNF)。实际设计关系模式时,一般要求满足3NF。3关系运算 传统的集合运算:并、交、差 专门的关系运算:选择、投影、联接二、关键字1关键字的种类 超关键字、候选关键字、主关键字、外部关键字 超关键字、候选关键字、主关键字均能惟一确定一条记录;外部关键字不
3、一定能惟一确定一条记录。三、VFP概述 VFP是一种关系型数据模型。1VFP的文件类型(参见P19) 在创建某类文件时,在磁盘上实际生成的文件数目。2项目管理器 项目管理器是VFP的控制中心。 有关项目管理器的叙述:同一个文件可以同时属于多个项目;可以从项目中把文件移去或删除;项目中文件的包含与排除;在项目中建立文件等。四、例题:1二维表中能唯一确定记录的一列或多列的组合称为超关键字。若一个超关键字去掉其中任何一个列后不再能唯一确定记录,则称其为_。2从数据模型看,VFP属于_型数据库管理系统。3数据库中的数据按一定的数据模型组织、描述和储存,具有较小的_、较高的数据独立性和易扩展性,并可以供
4、各种用户共享。4关系模型是用_的形式来表示实体及实体间的关系的。5在VFP系统中,如果要打开一个项目文件,应使用的命令是_。6长期以来,在数据库设计中广泛使用的概念模型当属“实体-联系”模型(简称E-R模型)。E-R模型中有3个基本的抽象概念,它们分别是_、_和_。7在VFP的集成操作环境中,对于比较长的命令,在“命令”窗口和程序中可以利用_以实现换行输入。8创建并保存一个项目后,系统会在磁盘上生成两个文件,这两个文件的文件扩展名分别是_和_。9数据库按数据模型可分为层次数据库、_、_和_等。10概念模型常用_表示。11关系是以_结构来表示实体集及其实体间的联系。12关系规范化的条件可以分为若
5、干级,每一级称为一个_。13根据给定的联接条件将两个关系模式拼成一个新的关系,称为_运算。14在项目管理器的某个选项卡中,若某类型数据项有一个或多个数据项,则单击_符号可折叠展开的列表。15数据模型不仅表示反映事物本身的数据,而且表示_。16二维表中的列称为关系的_;二维表中的行称为关系的_。17在关系数据库的基本操作中,从表中取出满足条件元组的操作称为_;根据给定的联接条件把两个关系模式拼成一个新的二维表的操作称为_;从表中抽取若干个属性组成新的表的操作称为_。18VFP不允许在主关键字字段中有重复值和_。19在VFP中,关闭所有的文件并结束当前VFP系统运行的命令是_。20数据库通常包括两
6、部分内容:一是按一定的数据模型组织并实际存储的所有应用所需的数据;二是存放在数据字典中的各种描述信息,这些描述信息通常称为_。第2章 VFP语言基础一、VFP的数据类型1VFP名称命名规则(P27)2VFP数据类型 数据和字段的数据类型(包括在表中所占空间的大小)P25 备注型和通用型数据只能在表中使用,其在表中占4个字节,用于建立一个引用。其数据内容存储于一个与表文件名相同、扩展名为.fpt的文件(表备注文件)之中。(1)6种常量的表示方法 字符型常量的3种定界符 日期型常量的定界符及2种格式(传统的和严格的日期格式)、命令SET STRICTDATE TO 的参数(P28) 逻辑型常量的定
7、界符 货币型常量的表示(2)变量 字段名变量和内存变量 内存变量的数据类型、内存变量与字段名变量同名时的访问优先级别、内存变量的赋值、内存变量文件的使用(SAVE)与恢复(RESTORE)。 数组 数组的声明、数组的赋值(数组元素的赋值和数组名的赋值)、数组的引用(数组元素的引用和数组名的引用)、以一维数组的形式对二维数组的引用。 内存变量/数组的生存期与作用域 全局变量、私有变量、局部变量(PUBLIC、PRIVATE、LOCAL)二、运算符1各种运算符及运算级别 字符运算符:、$ 算术运算符:、*、/、%、*() 日期运算符:、 逻辑运算符:NOT与 !、AND、OR (运算的级别) 关系
8、运算符:、 =、=、= =2字符型数据比较大小 字符的排列顺序(拼音、笔画、机器) 比较字符型数据的大小(SET EXACT ON / OFF)三、函数 各个常用函数的函数名称、函数的功能、语法格式、函数参数的数目、各参数的数据类型及其含义、函数返回值的数据类型。(1)数值型函数: ROUND( )ABS( )MOD( ) SQRT( )MAX( )MIN( ) RAND( )INT( )(2)字符型函数: ALLTRIM( )LEFT( )RIGHT( ) SPACE( )SUBSTR( )LEN( ) AT( )与ATC( )(3)日期型函数: DATE( )DATETIME( )YEAR
9、( ) MONTH( )DOW( )DAY( )(4)数据转换函数: ASC( )CHR( )VAL( ) STR( )CTOD( )DTOC( )注: 26个英文字母(大小写)、空格符、换行符的ASCII值。(5)其它类型函数 IIF( )TYPE( )BETWEEN( ) ISNULL( )EMPTY( )ISBLANK( ) MESSAGEBOX( )(6)数据库、表、记录函数: BOF( )EOF( )RECCOUNT( ) RECNO( )FCOUNT( )SELECT( ) DBC( )USED( )DBUSED( ) DELETED( )FOUND( ) DBGETPROP( )
10、DBSETPROP( )四、表达式(1)名称表达式和宏替换的作用(P49 以宏替换为主)(2)判断表达式的值注意几个问题: 函数嵌套时,表达式的值的确定。 不同类型的数据在运算时必须先进行数据类型的转换(索引表达式)。 逻辑表达式的值的确定,特别要注意含NULL值时的运算。五、NULL处理1NULL的特点: 等价于没有任何值 与0、空字符串及空格不同; 排序优先于其它数据; 在计算过程中或大多数函数中都可以用到NULL值; NULL值会影响命令、函数逻辑表达式和参数的行为。 空值的输入方法:Ctrl + 02NULL值在表达式中的作用 数值表达式中含有NULL数据,则其返回值为NULL; 日期
11、表达式中含有NULL数据,其返回值也为NULL; 逻辑表达式中含有NULL数据,则其大部分返回值为NULL; 如果条件表达式的返回值为NULL,则被当作“假”看待(因NULL为非“真”),但在整个表达式的计算过程中,空值仍被看作NULL,直到整个表达式都被计算为止。(P5051)3EMPTY( )、ISBLANK( )、ISNULL( )三个函数的比较: 当内存变量或字段值是空格或空字符串时,函数EMPTY( )和ISBLANK( )的返回值为T;函数EMPTY( )对于0的返回值为T,ISBLANK( )对0的返回值为F;而函数ISNULL( )对这些数据的返回值均为F。 变量或字段值是NU
12、LL时,函数EMPTY( )和ISBLANK( )的返回值均为F;而ISNULL( )返回值为T。3NULL不是一种数据类型,给变量赋NULL值时改变了它的值,但并不改变它的数据类型(注意:变量一开始即赋于NULL值时的数据类型)。六、程序设计 VFP的程序文件扩展名为.prg,运行程序文件的命令是: DO 程序文件名注: DO命令可执行的文件(命令文件、查询文件、菜单文件、表单文件)。1程序结构 程序程序结构主要有3种类型:顺序结构、分支结构和循环结构。(1)顺序结构 按照顺序依次执行程序中的命令。(2)条件分支 IF ELSE ENDIF DO CASE ENDCASE(3)循环结构 FO
13、R ENDFOR DO WHILE ENDDO SCAN ENDSCAN 与循环相关的两条命令: EXIT LOOP注意: 语句的结构和语法。 程序的走向。 SCAN ENDSCAN结构中,SKIP语句对程序运行结果的影响。 条件语句FOR和WHILE之间的区别。注: 用双分支与多分支处理编程与程序填空; 用FOR循环与DO WHILE循环处理结构化编程; 用SCAN 循环处理表中记录(注意FOR条件与WHILE条件的不同)。(4)输出语句 ? 和 ? WAIT WINDOW(其后为一个字符型表达式)命令的使用2自定义函数和自定义过程 P57(1)自定义函数和自定义过程的定义 FUNCTION
14、 ENDFUNC PROCEDURE ENDPROC(2)自定义函数和自定义过程的调用方式 利用函数名 DO命令(3)参数的传递 形参与实参的关系:个数和数据类型必须一致。 参数的2种传递方式:引用传递、值传递 P60 传递方式的设定 系统默认的传递方式:函数是值传递;过程是引用传递 命令设置传递的方式: SET UDFPARAMS TO VALUE | REFERENDE ( )与 (4)参数的接收 PARAMETERS命令(函数或过程结构中的第一句语句)(5)函数运行后的数值返回 RETURN (缺省时返回逻辑真)七、与阅读程序和编写程序的相关问题 编程题: 形式:求数列前n项(或其它限制
15、)之和或满足某种条件的数值。 实现方法:运用循环结构(FORENDFOR、DOENDDO)与嵌套的分支结构。注:数列计算的关键是写出其通项公式 阅读程序写结果 综合运用分支与循环语句(包括SCAN循环)的嵌套结构及用户自定义过程、自定义函数等处理阅读程序写结果。例题:(一)写出表达式的值1( -12 % -5 ) 32ROUND( 1234.56 , -2 )3IIF(.T. AND NULL , 2+3 , 你好 )4LEN( ALLT( 南京 + SPACE( 2 ) 财经 ) )5(ABS( VAL( 2e4ab ) / 10 - YEAR( 2008 / 10 / 10 ) )(二)读
16、程序写结果1 s = 0 FOR i = 1 TO 10 STEP 2 IF( i / 3 ) = INT( i / 3 ) LOOP ENDIF s = s + i ENDIF ? s , i 程序运行结束时,s的值是_ ,i的值是_。2 DIMENSION A( 8 ) A( 1 ) = 1 A( 2 ) = 1 i = 3 DO WHILE i = 60 IF cj = 80 s = s + 1 ENDIF cnt = cnt + cj SKIP ENDSCAN ? s , cnt 程序运行结束时,s的值是 ,cnt的值是 。4 在某教学管理数据库中,有一个成绩表(cj.dbf),其表结
17、构及所含的记录如下表所示。成绩表 (cj.dbf ) 结构成绩表的(cj.dbf)记录内容字段名数据类型字段含义xhkcdhcjxhkcdhcjxhC , 6学号01020101780102020280kcdhC , 2课程代号01020102820103010180CJN , 3成绩01020103800103010385010202037001030106780102020458 执行下列程序: CLOSE TABLES ALL USE cj ; nSum = 0 nAvg = 0 n = 0 k = RECCOUNT FOR i = 1 TO k IF kcdh = 03 nSum =
18、nSum + cj n = n + 1 ELSE nAvg = nAvg + cj ENDIF SKIP ENDFOR nAvg = nAvg / ( k n ) ? nSum , nAvg 程序运行结束时,nSum的值是 、nVag的值是_。5 ? straa( www南京NJUE财经EDU大学网站cn , 0 , 0 ) FUNCTION straa PARA cstr , m , n FOR i = 1 TO LEN( cstr ) aa = ASC( SUBSTR( cstr , i ) ) IF aa 127 n = n + 1 i = i + 1 ELSE m = m + 1 EN
19、DIF ENDFOR RETURN m = + STR( m , 3 ) + SPACE( 3 ) + n = + STR( n , 3 ) ENDFUNC 程序运行结束时,VFP主窗口显示m = _、n = _。(三)填空题1完善下列程序,此程序的功能是统计一个由ABCDEF六个大写英文字母所组成的字符串中各种字母的个数。 CLEAR cstr = BCDDEFABDFABDFE STORE 0 TO na , nb , nc , nd , ne , nf DO WHILE LEN( cstr ) 0 c = LEFT( cstr , 1 ) n&c = _ cstr = _ ENDDO ?
20、 na , nb , nc , nd , ne , nf2下列程序运行后,a的值为_ ,b的值为_。 CLEAR a = 27 b = 0 IF INT( a / 3 ) = a / 3 b = MOD( a , 5 ) a = a + 8 ENDIF IF INT( a / 5 ) = a / 5 b = MOD( a , - 4 ) ENDIF ? a , b3若变量a的值为27,则a % 5的值为_ ,MOD( a , -5 )的值为_。4用_定义全局变量,用_定义私有变量,用_定义局部变量。5名称表达式是用圆括弧括起来的_型表达式,在命令和函数中使用它可以替代一个名称。6程序清单如下:
21、 IF X 0 Y = 1 ELSE IF X= 0 Y = 0 ELSE Y = -1 ENDIF ENDIF 上面程序段的功能是根据数值型变量X的取值范围不同,给变量Y赋不同的值。该程序段的多条命令可以简化为一条命令。该命令如下所示,请补充完整。 Y = IIF( X 0 , _ , _ )7在命令窗口中创建的任何变量或数组都被自动赋予_属性。8在系统默认情况下,系统通过_将参数传递给自定义函数,通过_将参数传递给过程。第3章 表的创建与使用一、表的结构1表的结构(1)基本概念 表中的列称字段(Field),它规定了数据的特征(属性)。 表中的行称记录(Record),每一条记录表示一个实
22、体。记录是多个字段的集合。 表结构的定义主要是指定表的字段及其属性,即:字段名、字段的数据类型、字段宽度等。(2)表中字段的数据类型 在VFP中,某些字段的宽度是固定的: 日期型、日期时间型、货币型为8个字节; 备注型、通用型、整型为4个字节; 逻辑型为1个字节; 对于含有备注型和通用型字段的表来说,系统会自动生成一个相应的备注文件,用于存储备注内容。备注文件的主文件名与表文件名相同,扩展名为.fpt。在表的备注字段中,仅存储引用信息,指向备注文件中的备注内容。 仅数值型字段需要设置小数位数。字段的宽度为(整数部分包括正负号): 整数部分宽度 + 1 (小数点) + 小数部分宽度2表结构的创建
23、 利用表设计器创建表的结构 CREATE TABLE - SQL命令创建表的结构(P66) CRETE TABLE/DBF 表文件名 FREE ; (字段名1 字段类型 (宽度 , 小数位数 ) ; NULL | NOT NULL ,字段名2 字段类型 ) 3表结构的修改 格式1: ALTER TABLE 表文件名 ADD | ALTER COLUMN ; 字段名 字段类型 ( 段宽度 , 数位数 ) ; NULL | NOT NULL 格式2: ALTER TABLE 表文件名 RENAME COLUMN ; 原字段名 TO 新字段名 格式3: ALTER TABLE 表文件名 DROP C
24、OLUMN 字段名二、表的使用1表的打开与关闭(1)表的打开: 表的独占和共享 SET EXCLUSIVE ON / OFF 在指定的工作区打开表 USE 表文件名 IN 工作区号 / 0(2)表的关闭 USE关闭当前工作区中表 USE IN 别名 / 工作区号关闭指定工作区中表 CLOSE TABLES ALL 关闭所有打开数据库中的所有表 CLOSE DATABASES ALL 关闭当前数据库和表 CLOSE ALL关闭所有工作区中打开的数据库、表和索引,并选择工作区1 CLEAR ALL从内存中释放所有内存变量、数组以及自定义菜单、窗口等 QUIT退出所有VFP文件都将被关闭(3)工作区
25、的选择 表的工作区编号 表的别名的使用 SELECT命令 SELECT 别名 / 工作区号注意: SELECT命令与SELECT( )函数的区别。2表的编辑(1)插入记录 INSERT-SQL命令 INSERT INTO 表文件名 (字段名1 , ) ; VALUES (表达式1 , ) APPEND命令 APPEND BLANK APPEND FROM 表文件名注:备注型字段数据的输入:Ctrl + Home(2)表的浏览 BROWSE FIELDS 字段名表 FOR 逻辑表达式 ; FREEZE 字段名表 NOAPPEND NODELETE ; NOMODIFY TITLE 字符表达式 如
26、果仅显示满足某一条件的记录,则可以在命令中使用FOR条件子句,或用命令: SET FILTER TO 条件表达式注意: 此命令不会限制SELECT-SQL、DELETE-SQL、UPDATE-SQL命令对表中记录的访问。 如果仅显示某一部分字段,应使用命令: SET FIELD TO 字段名列表(3)记录的定位 记录的定位有绝对定位、相对定位和条件定位。 GO TOP、GO BOTTOM、GO n是绝对定位命令;SKIP是相对定位命令;LOCATE FOR是条件定位命令。注意: GO TOP与GO 1 GO BOTTOM与GO RECCOUNT( ) 记录的定位涉及到:记录指针、记录开始标志、
27、记录结束标志。 记录指针的测试函数:BOF( )、EOF( )、RECNO( ) 表文件刚打开时,记录指针指向表中的第1条记录, RECNO( )函数的返回值为1;函数BOF( )的返回值为.F. ;执行SKIP 1的命令后,BOF( )的返回值为 .T. ,RECNO( )函数的返回值为1。 记录指针指向末记录时,EOF( )的返回值是 .F. ;执行SKIP命令后,EOF( )的返回值是.T. ,RECNO( )函数的返回值为记录总数加1。 当打开一个空表(无记录的表)时,函数BOF( )和 EOF( )的返回值均为 .T. ,函数RECNO( )的返回值为 1。 RECNO( )函数的最
28、小值是1,不可能为0或负数,最大值是表中记录总数加1。 在界面操作时,作用范围有4种选择: All表中全部记录 Next n从当前记录开始的n条记录 Record n仅指记录号为n的记录 Rest从当前记录开始至表末尾的记录(4)修改记录 UPDATE-SQL命令 UPDATE 表文件名 SET 字段1 = 表达式 , ; WHERE 条件表达式 REPLACE命令 (5)删除记录 逻辑删除 DELETE-SQL命令 DELETE FROM 表文件名 WHERE 条件表达式 DELETE命令 物理删除 PACK ZAP 对带有删除标记记录的访问:SET DELETED ON | OFF 默认值
29、为OFF,允许访问带有删除标记的记录;ON忽略标有逻辑删除标记的记录。3数据的复制 COPY TO4数据的统计 SUM 字段名列表 范围 FOR 条件 TO 内存变量名 COUNT 范围 FOR 条件 TO 内存变量名 AVERAGE 字段名列表 范围 FOR 条件 TO 内存变量名 三、表的索引 记录的物理顺序与逻辑顺序(排序和索引)1索引的类型 主索引 仅用于数据库表中,每张表仅有一个主索引;组成主索引关键字的值在表中是唯一的; 候选索引 可用于数据库表和自由表,每张表可有多个候选索引;组成候选索引的关键字的值在表中是唯一的; 普通索引 可用于数据库表和自由表,每张表可有多个普通索引;组成
30、普通索引的关键字的值在表中不是唯一的,允许有重复值; 唯一索引 可用于数据库表和自由表,每张表可有多个唯一索引;组成唯一索引的关键字的值在表中允许有重复值,但是在索引对照表上,具有重复值的记录仅存储其中的第一个。(2)索引文件类型 结构复合索引文件 其文件名与对应的表文件名相同,扩展名为CDX;结构复合索引文件与表文件同步打开、更新和关闭;结构复合索引文件中可以含有所有类型的索引(自由表的结构复合索引文件不含有主索引);结构复合索引文件的创建既可以是界面的,也可以用INDEX命令创建(命令中无OF子句); 非结构复合索引文件 其文件名由用户自定义,扩展名也是CDX;非结构复合索引文件不会随表文
31、件的打开而打开;非结构复合索引文件的创建,必须要用命令INDEX命令(带有OF子句); 独立索引文件 独立索引文件的扩展名为IDX,其文件名由用户自定义;与非结构复合索引文件相同,独立索引文件不会随表文件的打开而打开;独立索引文件中,无索引类型的区别;独立索引文件由INDEX命令创建(文件名由TO子句给出)。注: 不同索引文件的扩展名;索引文件的打开和关闭与表的打开和关闭之间的关系。(3)主控索引 主控索引的含义 无论何种类型的索引,均可设置为主控索引。 主控索引的设置: 打开表文件时,设置主控索引 P87 打开表后再指定主控索引 SET ORDER TO(4)索引的创建和使用 创建索引的命令
32、 INDEX ON (参见P86)注意: 不能作为索引表达式的字段的数据类型。 建立“多字段”索引表达式时,字段的数据类型不相同或同为数值型字段时的处理方法;索引表达式中日期型字段转换为字符型数据时的参数1的作用。 用INDEX命令所建索引时,索引类型的指定(教材P86)。 建立主控索引后,浏览表时的记录顺序。 索引的使用 主要用于快速查找:SEEK命令(5)区分几个概念 索引类型和索引文件类型 主索引和主控索引例题:1若已经为在当前工作区中打开的表设置了主控索引,将记录指针移动到物理顺序的第一条记录,所用的命令为GOTO 1,而将记录指针移动到逻辑顺序的首记录,所使用的命令为_。2在js表中
33、要按如下要求更改基本工资( jbgz ): 工龄( gl )在10年以下(不含10年)的基本工资增加100元 工龄( gl )在10年至19年(含19年)的基本工资增加200元 工龄( gl )在20年以上(含20年)的基本工资增加500元可用一条UPDATE命令完成上述更改,即: UPDATE js SET JBGZ = IIF( js.gl 10 , _ , ; IIF_ , jbgz + 500 , jbgz + 200 ) )3已知成绩表( cj.dbf )中包括xh字段(学号 , C型)、sxcj(数学成绩 , N型)、jsjcj(计算机成绩 , N型),并且已建立了1个按降序排序的
34、结构复合索引,其索引名为cj1、索引表达式为sxcj + jsjcj。该表中含有如下所示的3条记录。xhsxcjjsjcj200185732002928120038087若在命令窗口中执行如下两条命令: USE cj ORDER TAG cj1 BROWSE 则在浏览窗口中,学号为“2001”的记录在第_行显示;而首记录的学号是_。4彻底删除表中部分记录需要分两个步骤来实现:首先是作_删除,即用DELETE或DELETE-SQL命令给需要删除的记录加注删除标记;然后在第一步的基础上用_命令将彻底删除带删除标记的记录。5在JS表中有以下字段:基本工资(JBGZ N( 7,2 ) )、工龄(GL
35、N( 2 ) )、职称(ZC C( 10 ) )。要求将职称为教授或工龄在20年以上(包括20年)的教师的基本工资增加50元,可用一个UPDATE命令完成上述更改。该命令如下所示: UPDATE JS _ JBGZ = JBGZ + 50 WHERE _6执行以下程序段: CLOSE TABLE ALL USE XS SELECT 3 USE JS USE KC IN 0 BROWSE 程序运行后,浏览窗口中显示_表的记录、当前工作区号是_。7要为学生表创建一个索引,要求先根据出生日期(CSRQ D)排序,出生日期相同时,再按学号(XH C(10)排序,则其索引表达式应该是_。8表的索引文件有
36、3种类型,其中_索引文件会随表的打开而自动打开,其索引文件的文件名为_,扩展名为_。9要在xs(学生)表结构中删除csrq字段,则相应的操作命令为: ALTER TABLE xs _10在打开了js表后,再次用命令 USE js IN 20 AGAIN打开js表。则第二次打开的js表的别名为_。11命令USE xs IN 2 执行后,若仅用一条命令来关闭该表,则该命令为_。12以下程序执行后,SELECT(0)的返回值是_,SELECT(xs)的返回值是_。 CLOSE ALL SELECT 10 USE js IN 0 USE xs IN 013如果要彻底删除表中带有删除标志的记录,可以使用
37、命令_,不过在该命令执行之前,必须将表用_方式打开。第4章 数据库的创建与使用一、数据库 创建一个新的数据库都将生成三个文件:数据库文件(.dbc)、数据库备注文件(.dct)和数据库索引文件(.dcx)。1数据库的组成 数据库表(包括数据库表之间的关系)、视图、连接、存储过程。2数据库与数据库表之间的双向链接 它们之间的双向链接包括:前链(存储于数据库文件中)和后链(存储在数据库表文件中)。 前链意外丢失后,可以由FREE命令删除表的后链,使它成为一张自由表。 数据库表成为自由表后数据库表的扩展属性将全部丢失。3数据库的创建与使用 创建数据库 打开与关闭数据库(命令操作) 数据库的打开/关闭
38、与数据库表的打开/关闭的关系。4数据字典 存储在数据库中用于描述所管理的表和对象的数据,即关于数据的数据。二、数据库表1数据库表的字段扩展属性(1)字段的显示属性 字段格式、输入掩码、字段的标题(2)字段的有效性规则 字段的有效性规则仅涉及该字段的值。在改变字段的值,且光标离开字段或关闭表时进行字段有效性规则的检验。(3)字段的默认值和默认控件类2数据库表的表扩展属性(1)长表名与表注释(2)记录有效性规则及有效性信息 记录有效性规则涉及多个字段的值。在改变字段的值,且光标离开记录或关闭表时进行记录的有效性规则检验。注: 数据库表的以上所述扩展属性的命令设置方法(CREATE TABLE、ALTER TABLE命令)。(3)表的触发器 触发器是绑定在表上的逻辑表达式,当表中的任何记录被指定的操作命令修改时,在进行了其它所有检查之后被激活。触发器返回值为T时允许执行相应的操作,否则不允许执行相应的操作。 触发器的种类(插入、更新与删除触发器) 触发器的设置命令:CREATE TRIGGER(P102)注: 要求能根据给定的要求正确写出