




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四章 数据库和数据表的操作4.1 VFP数据库及其建立4.1.1 数据库和表的基本概念数据库:是一个逻辑上的概念和手段,通过一组系统文件将相互联系的数据库表及其相关的数据库对象统一组织和管理.数据表:数据库的主要内容,它是一组相关数据的有序集合,是关系数据库的基本结构,是处理数据,创建关系数据库和应用的基本单元,在VFP中,数据以记录和字段的形式存储在表中数据表的存在形式数据库表:被注册到某一个数据库中自由表:独立存在,不与数据库相关联4.1.2 建立数据库(三种途径) *建立专用目录存放自己的文件1、 在项目管理器中建立数据库2、 通过新建对话框建立数据库3、 使用命令建立数据库 CREATE DATABASE|?使用命令建立数据库后不打开数据库设计器,只是数据库处于打开状态 .在建立数据库时,建立了扩展名分别为dbc、dct和dcx的三个文件4.1.3 打开数据库(三种方法与建立相对应)OPEN DATABASE|?EXCLUSIVE|sHARED独占方式:不允许其它用户在同一时刻也使用该数据库4.1.4 删除数据库 移去:从项目管理器中删除,但不从磁盘上删除 删除:彻底删除 VFP的数据库文件并不真正含有数据库表或其它数据库对 象,只是在数据库文件中登录了相关的文件信息,表、视图和其它对象是独立存放在磁盘上。项目管理器中删除命令删除:DELETE DATABASE 4.1.5 关闭数据库CLOSE DATABASE4.2 建立数据库表4.2.1 在数据库中建立表使用数据库设计器使用表向导(数据库菜单操作,数据库快捷菜单操作)利用表设计器创建数据表结构1、 数据库表名2、 字段名(字段变量)命名规则:1)最长128字符 2)必须以字母或汉字开头 3)可以由字母、数字、汉字和下划线组成 4)字段名中不能有空格 5)遵循“见名知义”原则3、 字段类型和宽度字段的数据类型有13种字符型:文字性质内容的字段及不参加运算的数字性质内容的字段,最大宽度为254数值型:参加运算的数字性质内容的字段(负数与小数点各占一位) 日期型及日期时间型货币型:保存货币数值,字段宽度固定为8个字节逻辑型:两者取一性质的字段备注型:字符个数较多的字段(不定长度的文本数据),字段宽度固定为4个字节通用型:用于标记电子表格、文档、图片等OLE对象4、 空值缺值或没有确定值5、 显示区域 格式:实质上是一个输出掩码,它决定了字段在表单、浏览窗口等界面中的显示风格输入掩码是字段的一种属性,用于限制或控制用户输入的格式标题用于字段显示时的标题,若不指定则显示字段名6、 字段有效性(用于数据输入正确性的检验,不仅可以限制输入数据表中数据的类型,还可以限制输入数据的取值范围)屏蔽非法字段值的输入7、 字段注释:设置字段的详细说明信息8、 记录有效性:用于检查同一记录中不同字段间的逻辑关系9、 触发器10、 表注释:对表中的信息和相关信息进行说明。方便数据库和数据表的使用及维护4.2.2 修改表结构1、 打开表设计器 MODIFY STRUCTURE2、 修改已有字段3、 调换字段位置4、 增加新字段5、 删除字段4.2.3 显示表结构1、 在表设计器中显示2、 命令方式显示LIST|DISPLAY STRUCTURE 设数据各字段总宽度为50,显示数据库结构命令list stru命令显示可使用字段的总宽度为( )4.3 数据表的基本操作4.3.1 数据表的打开与关闭1、 打开(项目管理器、文件菜单、数据工作期、命令)2、 关闭4.3.2 记录的输入1、 记录输入(备注与通用型)2、 记录追加APPEND:在表的尾部增加记录,一次可以输入多条APPEND BLANK:在表尾增加一条空白记录INSERTBEFOREBLANK:在表的任意位置插入新记录3、从其他数据表文件中追加记录4.3.3 记录的浏览和显示1、 在浏览窗口显示和浏览记录BROWSE 2、 用列表方式显示记录LIST|DISPLAY4.3.4 记录的查询与定位当前记录 记录指针几个常用函数:表文件首测试函数BOF()测试表文件中的记录指针是否指向开始位置表文件尾测试函数EOF()测试表文件中的记录指针是否指向结束位置记录号测试函数RECNO()返回当前记录指针指向的记录号记录数测试RECCOUNT()返回当前表文件的记录个数工作区测试函数SELECT()测试当前工作区,并给出工作区号测试当前的数据库名DBC()数据表为空表时,两者同时为真测试当前工作区上打开的数据表名DBF()指针的定位:当需要编辑和修改某一字段的值时,必须先将指针指向该记录1、 用GOTO|GO命令直接定位(绝对移动)2、 SKIP命令(按逻辑顺序定位)(相对移动)相对于当前记录指针的位置,向前或向后移动一定的数量值3、 用LOCATE命令定位(按条件定位)CONTINUE(继续查找命令)函数:eof() FOUND()(常用于程序代码中判断)4、菜单方式定位4.3.5 记录数据的修改1、 在浏览窗口修改2、 用EDIT|CHANGE命令式修改(在编辑窗口显示并编辑指定的字段)3、 用REPLACE命令批量(对当前数据表中指定范围内满足条件的记录分别用表达式的值自动取代相应字段的原来值)4、 利用菜单批量修改4.3.6 记录的删除与恢复1、 逻辑删除 DELETE2、 恢复逻辑删除 RECALL3、 物理删除有删除标记的记录(PACK)4、 物理删除表中全部记录(ZAP)4.4 索引4.4.1 基本概念 索引是由指针构成的文件,这些指针逻辑上按照索引关键字值进行排序,实际上创建索引是创建一个由指向.dbf文件记录的指针构成的文件若要按特定的顺序定位、查看或操作表中记录,可以使用索引作为排序机制,为开发应用程序提供灵活性。 VISUAL FoxPro索引是由指针构成的文件,这些指针逻辑上按照索引关键字值进行排序,索引文件和表的dbf文件分别存储,并且不改变表中记录的物理顺序,实际上创建索引是创建一个由指向 dbf文件记录的指针构成的文件。若要根据特定顺序处理表记录,可选择一个相应的索引,使用索引还可以加速对表的查询操作w 索引文件可以看成是按关键字段的升序或降序将数据表重新排列后的文件。w 一个数据表可以有多个索引文件,一个索引文件也可以包含多个索引w 索引文件不能单独使用,它必须与相应的数据表配合使用才有意义。索引的类型1、 主索引(只能用在数据库表中,建立的关键字段必须是不重复值项。一个表只能有一个主索引。不能用命令建立)2、 候选索引(用于那些不作为主关键字段但字段值又必须惟一的字段, 一个表可建立多个候选索引)3、 惟一索引(在使用相应的索引时,重复的索引字段值只有惟一一个出现在索引项中,用于一些特殊的程序设计)4、 普通索引(用于一般的提高查询速度)4.4.2 在表设计器中建立索引1、 单项索引2、 复合字段索引(在多个字段上的索引)4.4.3 用命令建立索引与表名同名的.cdx索引是一种结构复合压缩索引在打开表时自动打开在同一索引文件中能够包含多个索引方案,或索引关键字在添加、删除、修改记录时自动维护索引【格式】index on tag forascending|descendingunique|candidateadditive【格式】index on tag of forascending|descendingunique|candidateadditive独立复合索引文件只能用命令建立4.4.4 使用索引1、 打开索引文件SET INDEX TO2、 设置当前索引SET ORDER TO3、 使用索引快速定位(SEEK)4、 删除索引(DELETE TAG TagName|All)4.5 数据表的统计操作及复制一、 累加求和及求平均值横向操作对当前打开表文件中的指定范围内满足条件的数值型字段的数据求和或求平均(纵向操作)sun/average 字段名表 范围 for 条件 to 变量名表二、 统计记录个数统计数据表文件中共有多少条记录,或者统计满足某些特定条件的记录个数COUNT 范围 FOR 条件 TO 内存变量名三、 统计计算命令对当前打开的表文件中数值型字段数据求和、求平均、求最大值、最小值等计算CALCULATE 表达式 范围 条件 to 内存变量名表四、 分类汇总对数据按类进行分类合计,将所求的和作为一条新记录送入到新表中TOTAL TO 表文件名 ON 关键字段名 FIELDS 数值型字段名表 范围 条件注意:在汇总之前,当前表文件应按关键字段名建立了索引,且已经指定为主控索引;新表与当前表的结构相同五、 文件复制1、 复制部分记录或整个数据表COPY TO 文件名 范围 条件 字段名表2、 复制数据表结构4.6 多数据表操作 4.6.1工作区的基本概念 是内存中开辟的一块与数据表建立起映射关系的区域(内存中的缓冲区)。内存中最多可以开辟32767个工作区 内存变量与工作区无关1、 工作区编号与别名 VFP中最多开辟了32767个工作区。编号分别为1、2、3、4、32767,其中前10号的别名分别为A、B、C、D、E、F、G、H、I、J,11到32767号分别为W11、W12、W13、W327672、 当前工作区(在某一时刻,当前工作区只有一个,在当前工作区打开的数据表,称为当前表),VFP启动后,自动指定1号当前3、 数据表的别名 在某工作区中打开数据表时,可以为数据表起一个别名。 use aliasin 0|注意:若选择IN 0,表示在当前没有使用的编号最小的工作区上打开数据表;打开数据表后,可以用数据表的别名代替工作区的别名4.6.2工作区的选择和使用1、 选择工作区数据工作期SELETE 工作区编号|工作区别名|数据表别名2、 在不同工作区打开同一数据库 SELE 4 USE RSGL AGAIN &在不同的工作区打开相同的数据表 注意:同一数据表在不同工作区打开后,各自的指针位置可以不同3、 使用非当前工作区中表的数据4.6.3 数据表的关联1、 设置临时关系数据工作期2、 设置永久关系4.7 管理数据库4.7.1 使用多个数据库1、 在项目中新建、添加、打开和移去数据库2、 设置当前数据库常用工具栏的数据库下拉列表SET DATABASE TO 数据库名?DBC()3、 访问其他数据库中的表4、 关闭数据库5、 向数据库中添加和删除表4.7.2 参照完整性 实体完整性与主关键字(实体完整性是保证表中记录惟一,即在一个表中不允许有重复的记录)域完整性与约束规则 参照完整性与表间的关联(当插入、删除和修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正确)参照完整性规则包括更新规则、删除规则和插入规则4.7.3 数据交换1、 数据表向数组传递数据SCATTER FIELDS 字段名表 MEMO to 数组名 将当前数据表的当前记录值传递到指定的数组变量中 设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 年后复工安全培训制作课件
- 年历课件关注的问题
- 广西公务员真题2025
- 2024年晋中市太谷区社区专职工作人员选聘考试真题
- 平面转译设计讲解课件
- 工业安全标示培训内容课件
- 委外项目安全培训课件
- 姓氏歌课件朱丹婷
- 平面包装设计课件
- Estradiol-dipropionate-Standard-生命科学试剂-MCE
- 在其香居茶馆里
- GB/T 3785.1-2023电声学声级计第1部分:规范
- j11pro固件爵聆数播说明书
- 第四版环境工程微生物学课后习题答案
- 房地产营销渠道拓客培训
- 电容式电压互感器试验指导方案
- GB/T 10781.2-2022白酒质量要求第2部分:清香型白酒
- GB/T 23353-2009梨干技术规格和试验方法
- FZ/T 52003-2014丙纶短纤维
- 百善孝为先主题班会课件
- 人教版小学数学六年级下册《斐波那契数列》课件
评论
0/150
提交评论