已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第7章数据库及表操作 教学目的 1 数据库 表的建立与查看 2 数据表结构的浏览与修改 3 对数据表记录的操作 教学重点 难点 对数据表记录的可视化操作和命令操作 输入和追加数据 指针定位 浏览 显示和插入 删除记录 修改和批量替换数据 VisualFoxpro的命令格式中 经常会出现如下的符号 表示可选项 可以根据具体问题选择一个或多个选项 表示必选项 该项必须根据具体问题选择一个确定的参数 省略时 会出现语法错误 用 隔开可选项 表示可在若干项参数中选其中之一 在具体使用命令使 这些符号不要输入 7 1创建自由表 表是满足关系模型的一组相关数据的集合 严格说 应当将表叫做数据表或表文件 在关系数据库管理系统中 所有的操作都是在表的基础上进行的 在VFP中 表以两种形式存在 即自由表和数据库表 自由表是脱离数据库的表 将自由表添加到数据库中就成了数据库表 在数据库打开的形式下 创建的表是数据库表 自由表和数据库表的属性是不同的 数据库表更强于自由表 7 1 1表概述 1 定义二维表名2 设计二维表的栏目3 填写二维表的内容4 定义表的结构 7 1 2利用 表设计器 创建表 1 利用菜单创建2 在 项目管理器 中创建表3 使用Create命令命令格式 Create或Createtable 字段名1类型 宽度 字段名2类型 宽度 字段名3类型 宽度 例如 使用上述方法创建 人才档案 表 7 1 3利用 向导 创建表7 1 4表的打开和关闭 1 工作区的概念工作区实质上是指每个打开的表所占用的内存空间 所谓打开表文件就是把它从磁盘调入内存的某一工作区 VisualFoxPro提供了32767个工作区 每个工作区都能打开一个表文件 并且 都有各自独立的记录指针 通过选择不同的工作区 打开不同的表文件 就可以实现对多表进行操作的目的 满足程序对多表进行操作的要求 2 主 当前 工作区与非当前工作区尽管可以在不同的工作区打开多个表 但只有最后选择的工作区是处于活动的 称为主工作区或当前工作区 其它的工作区称为非主 当前 工作区 当前工作区中的表称为 当前表 而非当前工作区的表称为 非当前表 3 工作区的命名为了识别不同的工作区 工作区需要命名 VisualFoxPro对工作区的命名有阿拉伯数字编号命名和表的别名命名二种方法 1 阿拉伯数字编号命名用1到32767阿拉伯数字编号来表示工作区号 其中前十个工作区还可以依次用A J十个字母来表示 2 表的别名命名用表的别名来表示工作区号 UseAliAs 1N 例 Use学生档案表AliAsxsdaIN3指定了学生档案表文件的别名为xsda 那么3号工作区也可以用别名xsda来表示 别名可以包含多达254个字母 数字或下画线 且必须以字母或下画线开头 3 工作区的选择通过Select命令来选择工作区 选择工作区有两个概念 一是如何选择空闲工作区来打开新的表 二是如何选择已有表的工作区 1 选择空闲工作区Select0表示选定当前未被使用的最小工作区 2 切换工作区Select 参数说明 表文件打开后 才可在Select命令中使用别名 4 多工作区中表字段的引用在进行多表操作时 对于当前表在引用时 可以直接使用字段名 对于非当前表在引用时 必须用工作区号或别名来标识这些字段名 方法是在工作区与字段名之间用小数点或 来分隔 如 工作区号 字段名或别名 字段名 例 在两个工作区中分别打开学生档案表和学生成绩表文件 Select1 选择最小工作区Use学生档案表Go4DisplaySelect0Use学生成绩表dispfields学生档案表 专业代码Select学生档案表Browse 3 表的打开usein 4 表的关闭closeall 关闭所有打开的表 7 1 5修改表的结构 1 菜单形式2 命令形式modifystructure例如 在 人才档案 表中插入一个新字段 补充内容 表结构的浏览 List displaystructure 7 2表中数据的输入 7 2 1以追加方式输入数据1 表 以 浏览 状态下 在 显示 下拉菜单选 追加方式 2 使用Append命令Append Blank 知识点 此命令的要点及区别 3 备注型数据的输入 4 通用型数据的输入 7 3表中数据的显示与修改 7 3 1用编辑方式显示和修改数据在 显示 下拉菜单选 浏览 7 3 2用浏览方式显示和修改数据在 显示 下拉菜单选 编辑 7 3 3使用操作命令浏览和修改数据 命令方式Browse Scope Fields For List Scope Fields For Display Scope Fields For 是用来确定参与命令操作的记录范围 它有四种选择 All 表示所有的记录RecordN 表示第n条记录NextN 表示当前记录后的n条记录 包括当前记录 Rest 表示当前记录后的所有记录 包括当前记录 其中 NextN和Rest命令需要事先用Goto定位 Fields 投影Fields 是一种投影操作 用来说明数据表的字段名称 每个字段名之间必须用逗号隔开 如果不选择该子句 则表示选择所有的字段 For For 是一种选择操作 它使命令只作用于那些逻辑表达式的值为 真 的记录 Whlie Whlie 也是一种选择操作 与For子句不同的是 当遇到第一条不满足逻辑表达式为 真 的记录时 就终止命令的作用 即使后面仍然有满足逻辑表达式为 真 的记录也中断执行 并把记录指针定位在不满足逻辑表达式为 真 的第一条记录上 Browse是全屏幕方式显示 List是以滚动方式显示 而Display则为分屏方式显示 在Browse命令的显示窗口中 可以对记录进行编辑修改 但List Display命令显示记录后 并不能对记录进行编辑修改 例 在学生档案表 Dbf表文件中 查询显示99级或98级并且籍贯为 江西 或 浙江 籍的学生 显示内容为学号 班级 姓名 性别 年龄 籍贯等字段 注 学号的前二位表示年级 Use学生档案表ListFor Subs 学号 1 2 99 Or Subs 学号 1 2 98 And 籍贯 江西 Or 籍贯 浙江 Fields学号 班级 姓名 性别 年龄 籍贯 注意字符串截取函数的运用Use 7 3 4控制字段和记录的访问 1 限制对字段的访问2 限制对记录的访问 7 4数据库的创建及使用7 4 1创建数据库创建数据库有命令 菜单和利用项目管理器创建3种方法 1 命令格式 CreateDataBase 命令功能 用于创建一个数据库 1 数据库名 指定要创建的数据库的名称 2 数据库创建后 VisualFoxPro自动将其保存在指定目录 并以Dbc为其扩展名 3 当用CreateDataBase命令创建数据库后 不必再用OpenDataBase命令打开即可使用 例题 CreatDatabaseF 学生信息库CreatDatabase学生信息库 2 菜单方式菜单方式有 新建文件 和 向导 两种3 项目管理器 方式先建立项目文件 再在其中建立数据库 7 4 2打开数据库1 命令方式一OpenDatabase Exclusive Shared 参数说明 是要打开的数据库名 若用户不指定文件的扩展名 VisualFoxpro会自动的指定为DBC Exclusive Shared 选择独占或共享的方式打开 选择Exclusive将以 独占方式 打开数据库 即一个用户打开数据库而其他用户则不能访问该数据库 选择Shared将以 共享方式 打开数据库 即一个用户打开数据库而其他用户也可以访问数据库 例 打开一个名为 学生信息库 的数据库 SetDefaToF OpenDatabase学生信息管理库Exclusive 2 命令方式二 显示打开数据库 ModifyDatabase 该命令能显示地打开数据库 也就是说能打开 数据库设计器 窗口 例 ModifyDatabaseF 学生信息库3 菜单方式单击 文件 打开 或工具栏上的 打开 按钮4 使用 项目管理器 打开数据库 7 4 3向数据库添加表1 自由表和数据库表自由表 不隶属于任何数据库数据库表 隶属于某个特定的数据库数据库表和自由表是可以相互转换的 当一个自由表被添加到某一个数据库后 就成了数据库表 当数据库表从数据库中移出后 就成了自由表 2 添加表 打开 数据库设计器 打开 数据库 菜单 选择 添加表 在 项目管理器 中添加表 命令格式 addtable例如 opendatabase人才管理addtable人才档案3 移去表 7 5数据库表的使用 7 5 1设置字段的显示标题 标题设置区域 7 5 2给字段添加注释7 5 3设置字段的默认值7 5 4设置字段的有效规则 规则是该字段的条件 信息表示出错时的提示信息 默认值代表数据记录时的默认值 5 插入记录Insert Blank Before 参数说明 必须以独占的方式打开表文件 插入记录前 应用Go定位记录指针 Insert不选用 Blank 选项 是一条编辑命令 允许在当前记录后插入一条新记录 若选择 Before 选项 则在当前记录前插入一条新记录 若选用 Blank 选项 则不进入编辑状态 在当前表文件指针所在的记录后 前 Before 插入一条空记录 需要注意 Insert插入一条记录时 系统会对所有的记录重新排序 这对一个大的表来讲要花费大量的时间 所以 Insert命令在程序设计中一般很少使用 例 在学生档案表 Dbf表文件的第五条记录前插入一条记录 Use学生档案表ExclusiveGo5InsertBefore 7 表结构的复制 1 命令方式CopyStruTo Fields 参数说明 若选择可选项 Fields 则复制产生的新表文件的结构只包含Fields中指出的字段 同时 也决定了新表字段的排列次序 不选择 Fields 则将当前表文件结构全部复制到新表文件中 例 阅读下列命令并观察命令执行情况 Use学生档案表 打开学生档案表文件DisplayStruBrowseCopyStruToxsdaFields学号 班级 专业代码 姓名UseXsda 打开xsda表文件ListStru 可以看到xsda表文件只含学号 班级 专业代码 姓名四个字段browse 无记录数据2 向导方式P66 8 表的复制复制表文件是将当前表文件的结构和记录同时进行复制 以得到一个副本 这是保护表文件的安全措施之一 更重要的是 通过复制还能够方便地产生其他类型的文件 使不同的系统可以共享数据 命令格式 CopyTo Scope Fields For Type Sdf deli xls 参数说明 如果各选项都缺省 则复制所得的新文件为当前表文件的副本 若选择 SCOPE Fields For 则复制指定范围 指定字段
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年地质学检测卷讲解含答案详解【新】
- 2026年中级银行从业资格之中级个人理财考前冲刺模拟题库含答案详解(突破训练)
- 2026云南大学附属医院面向社会招聘非事业编制人员1人备考题库含答案详解(夺分金卷)
- 2026河南安阳殷都初级中学招聘备考题库含答案详解(能力提升)
- 2026甘肃兰州工业学院高层次人才引进98人备考题库(第一批)附答案详解(培优)
- 2026四川泸州龙马潭区人民医院招聘3人备考题库含答案详解(达标题)
- 2026广东深圳市南山区松坪文理幼儿园招聘1人备考题库带答案详解(夺分金卷)
- 2026湖北武汉市第三医院眼科招聘备考题库含答案详解(突破训练)
- 2025-2030智能车载行业市场现状供需分析及投资评估规划分析研究报告
- 2026上海师范大学附属官渡实验学校招聘1人备考题库附答案详解(b卷)
- 2026 年民政局制式离婚协议书正式范本
- 大车保养培训课件
- 胡麻油培训课件
- 压力容器安装安全专项施工方案
- 线杆迁移合同范本
- 广西绣球教学课件
- 监控设计合同范本
- 油田压裂砂合同范本
- 乡村黑山羊养殖帮扶项目可行性研究报告
- 交通标志安全教育课件
- 白先勇的课件内容
评论
0/150
提交评论