讲数据库的创建和使用.ppt

上传人:za****8 文档编号:6694196 上传时间:2020-03-02 格式:PPT 页数:75 大小:848.50KB
返回 下载 相关 举报
讲数据库的创建和使用.ppt_第1页
第1页 / 共75页
讲数据库的创建和使用.ppt_第2页
第2页 / 共75页
讲数据库的创建和使用.ppt_第3页
第3页 / 共75页
点击查看更多>>
资源描述
1 第7 8讲数据库的创建和使用 本章学习要求数据库的概念数据库的创建 打开 关闭等基本操作 数据库设计器 数据库表的创建 添加数据库表的数据扩展属性 数据级和表级永久关系与参照完整性 基本概念 设置 本章重点及难点数据库表的数据扩展属性永久关系参照完整性的理解与设置 2 本章内容 4 1VFP数据库概述 4 2数据库的创建 4 3数据库的使用 4 4VFP数据库字典概述 4 5数据库表 4 6永久关系和参照完整性 4 7操作数据库及其对象的几个常用函数 3 4 1VFP数据库概述 数据库是一个包容器 用来组织和联系表 它提供了存取数据的一种结构 内容 表表之间的关系连接视图存储过程 4 系代码表 教师表 课程表 学生表 任课表 成绩表 专业表 实例 教学管理数据库 5 4 2数据库表的创建 4 2 1数据库的创建 4 2 2VFP数据库的组成 6 4 2 1数据库的创建 界面方式在 项目管理器 中新建通过 新建 对话框创建 命令方式 createdatabase 数据库名 每创建一个数据库会生成三个相关文件 DBC DCT DCX 7 4 2 2VFP数据库的组成 表 视图 连接 存储过程 8 1 数据库表 前链保存在数据库文件中指向库表存储有关表文件的路径和文件名信息 后链保存在一张表的表头中指向拥有该表的数据库存储有关库文件的路径和文件信息 从属于某个数据库的表 数据库表与数据库之间的相关性通过 双向链接 实现 数据库文件 数据库表文件 9 2 视图 view 是一种 虚表 类型 其数据来源于一张或多张表 本地视图 远程视图 10 3 连接 connection 是保存在数据库中的一个定义 指定远程数据源的名称 创建远程数据连接的目的是创建远程视图 连接远程数据源的方法 直接访问机器上注册的ODBC数据源 用 连接设计器 设计自定义连接 11 4 存储过程 是保存在数据库中的过程代码 数据库移动时会自动随数据库移动 包括 保存用户自定义函数和过程保存参照完整性代码打开数据库时 它们便被加载到内存中创建 修改或移去存储过程的方法 项目管理器 存储过程 数据库设计器 数据库 菜单MODIFYPROCEDURE 12 4 3数据库的使用 创建数据库 打开数据库 关闭数据库 删除数据库 设置当前数据库 检查数据库有效性 13 界面方式 创建 打开 关闭 移去 删除 从项目中移去 从磁盘删除 14 设置当前数据库 15 命令方式 创建数据库createdatabase 数据库名 打开数据库opendatabase 数据库名 关闭数据库closedatabase关闭当前数据库closedatabaseall关闭所有数据库closeall关闭所有设置当前数据库setdatabaseto数据库名 16 删除数据库deletefile数据库名 注意点 删除数据库时 如果直接从windows的 资源管理器 窗口中删除 或利用deletefile命令 这些方法不会删除该数据库所包含的数据库表中的链接信息 因此 应通过 项目管理器 移去 操作进行删除 这样该数据库所包含的数据库表将自动变成自由表 17 检查数据库的有效性validatedatabase recover toprinter tofile文件名 recover用于说明更新链接 缺省时仅检查数据库的有效性 to子句用于说明检查结果的去向 缺省时在vfp主窗口中显示 说明 该命令只能处理以 独占 方式打开的数据库 在更新链接时 如果数据库表文件不在原位置 系统会打开 检查数据库 对话框 要求用户进行文件的定位 18 4 4VFP数据字典概述 数据字典是包含数据库中所有表信息的一个表 每个数据库带有一个数据库字典 数据库表可以享受到数据字典的各种功能 使用数据字典 可以创建字段级规则和记录级规则 保证主关键字字段内容的唯一性 如果不用数据字典 也可通过编程实现上述功能 19 数据字典可以创建和指定以下内容 表中字段的标题 注释 默认值 输入掩码和显示格式 以及表单中使用的默认控件类 表的主索引关键字长表名和表注释字段级和记录级有效性规则存储过程插入 更新和删除事件的触发器 20 4 5数据库表 4 5 1数据库表的创建 4 5 2数据库表的字段的扩展属性 4 5 3数据库表的表属性 4 5 4数据库表的约束机制及其激活时机综述 4 5 5数据库表的索引 4 5 6数据库表的添加与移去 4 5 7有关数据库及数据库表的几点说明 21 4 5 1数据库表的创建 界面方式 项目管理器 窗口 数据库设计器 在数据库打开时 利用菜单命令或常用工具栏 新建 命令方式在数据库打开时 利用createtable SQL命令 22 实例 下列命令可以在当前数据库jxsj中创建一张数据库表xsb opendatabasejxsj createtablexsb xhc 8 xbc 2 如果数据库已打开 但是使用了free关键字 则该表是自由表 如 23 4 5 2数据库表字段的扩展属性 24 1 字段的显示属性 25 用于指定字段显示时的格式 如大小 样式等 数据库表的字段格式参见教材P91表3 4 26 用于指定字段中输入数据的格式 数据库表的字段输入掩码参见教材P91表3 5 27 增强可读性 字段注释会出现在 项目管理器 窗口下部 28 2 字段的有效性 29 规则用来控制输入到字段中的数据的取值范围 信息指定在不满足规则时显示的说明信息 30 添加新记录时 为字段指定的初值 31 指定在用 表单向导 生成表单或从数据环境中将字段拖放到表单上时 与该字段相应的控件类 32 对字段有效性设置的命令方式 opendatabasejxsj createtablecj1 xhc 11 default 20062331000 kcdhc 6 cjN 3 0 checkcj 0andcj 100 createtablecj2 xhc 11 kcdhc 6 cjN 3 0 新建表结构时设置 修改表结构时设置 altertablecj2altercolumncjsetcheckcj 0andcj 100 教材P100 33 4 5 3数据库表的表属性 34 表注释会出现在 项目管理器 窗口下部 增强可读性 35 规则用来控制多个字段之间是否满足某种规则 信息指定在不满足规则时显示的说明信息 注意 与字段级规则相区别 36 触发器是指当数据库表中的记录被修改前 所做的检查满足条件后被激活 37 表属性设置的命令方式 opendatabasejxsj createtablexsname学生表 xhc 11 xmc 8 xbc 2 altertablejssetcheckcsrq gzrqerror 工作一定在出生之后 altertablejsdropcheck createtriggeronjsforupdateas f deletetriggeronjsforupdate 38 4 5 4数据库表的约束机制及其激活时机综述 约束机制及其激活时机 教材P103表4 4 39 4 5 5数据库表的索引 主索引 候选索引 唯一索引 普通索引 只有在数据库表中才能设置主索引 且一张数据库表只能设置一个 设置主索引的主要用途是为了建立表之间的永久性关系 40 4 5 6数据库表的添加与移去 向数据库中添加表 本质是建立数据库与表之间的双向链接 从数据库中移去表 本质是删除数据库与表之间的双向链接 41 界面方式 通过 项目管理器 通过 数据库设计器 42 命令方式 addtable表名 name长表名 removetable表名 delete 使用这两条命令之前 数据库必须已经打开 freetable表名 如果意外地删除了某个数据库文件 由于该数据库中包含的数据库表仍然保留后链 因此这些数据库表也不能被添加到其他数据库中 必须使用freetable命令删除后链 才能使之成为自由表 43 4 5 7有关数据库及数据库表的几点说明 参见教材P104 44 4 6永久关系与参照完整性 4 6 1表之间的关系 4 6 2表之间的永久关系 4 6 3参照完整性 4 6 4VFP完整性综述 45 关系的种类一对多关系 1 M 一 主表 一个记录在子表中有几个记录与之对应 多 子表 一个记录在主表中仅有一个记录与之对应 多对多关系 M N 甲表 一个记录对应于乙表中多个记录 乙表 一个记录对应于甲表中多个记录 必须建立 纽带表 JunctionTable 把多对多的关系分成两个一对多的关系 一对一关系 1 1 4 6 1表之间的关系 如 学生表与成绩表 如 学生表与课程表 46 学生基本信息表 学生成绩表 课程表 1 n 1 n 47 4 6 2表之间的永久关系 是保存在数据库中的 是数据库表之间的一种关系 是根据表的索引建立的 索引的类型决定了要创建的永久关系类型 48 建立 详细步骤参照教材P100 建立两张表的索引在 数据库设计器 中拖动索引标识编辑在 数据库设计器 中双击关系连线单击连线 数据库 编辑关系删除单击连线 按 DEL 键右击连线 删除关系 永久关系的建立和编辑 49 4 6 3参照完整性 用来控制数据库相关表之间的数据一致性 主关键字和外部关键字之间 的规则 参照完整性是建立在库表之间永久关系基础之上的 目的 防止孤立记录的产生 实施机制 规则被设置在主表或子表的触发器中 规则的代码被保存在存储过程中 相关表之间的数据一致性要求 有子必有父插子必有父父删子必删 P101 50 4 6 3参照完整性 设置参照完整性时 应满足以下规则 在关联的数据表间 子表中的每一个记录在对应的父表中都必须有一个父记录 对子表作插入记录操作时 必须确保父表中存在一个父记录 对父表作删除记录操作时 其对应的子表中必须没有子记录存在 51 4 6 3参照完整性 参照完整性规则包括三种规则 更新规则 当父表中记录的关键字值被更新时触发删除规则 当父表中记录被删除时触发插入规则 当在子表中插入或更新记录时触发每种规则又包括三种设置级联 将操作也作用于建立永久关系的另一数据库表限制 禁止操作忽略 允许操作 52 参照完整性的设置 参照完整性规则 53 4 6 4VFP数据完整性综述 三类完整性实体完整性 字段级 记录级参照完整性 表级用户自定义完整性通过字段级 记录级和表间三级完整性约束 有效地实现了数据的完整性和一致性 54 命令使用小结 有关数据库操作命令有关数据表操作命令有关记录操作命令有关索引操作命令有关表之间的关系的操作命令 55 有关数据库操作命令 创建数据库CREATEDATABASE 关闭数据库CLOSEDATABASE关闭当前数据库CLOSEDATABASEALL关闭所有数据库CLOSEALL关闭所有 注意 在使用命令创建数据库时 如果命令中没有指定数据库名称 或是命令后带的是 则会打开 创建 对话框 如果命令后带有数据库的名称 则创建数据库 并使数据库处于打开状态 但不打开 数据库设计器 窗口 56 有关数据库操作命令 设置当前数据库SETDATABASETO数据库名检查数据库的有效性VALIDATEDATABASE RECOVER TOPRINTER TOFILE文件名 删除数据库DELETEDATABASE 数据库文件名 57 有关数据库操作命令 添加数据库表ADDTABLE 表名 NAME长表名 移去和删除数据库表REMOVETABLE 表名 DELETE RECYCLE 58 有关数据表操作命令 创建数据表CREATE 数据表文件名 修改表结构MODIFYSTRUCTURE打开表USE表名 IN工作区号 表别名 AGAIN ALIAS自定义表别名 EXCLUSIVE SHARED NOUPDATE IN子句用于指定在那个工作区中打开表 缺省时表示在当前工作区中打开 AGAIN子句用于说明该表再次打开 ALIAS子句用于定义打开表的别名 缺省时表的别名与表名相同 EXCLUSIVE表示表以独占的形式打开 SHARED表示表以共享的方式打开 NOUPDATE用于指定表打开后不允许更新 即不可修改其结构和数据 59 有关数据表操作命令 关闭表 关闭当前工作区中的表USE 关闭非当前工作区中的表USEIN工作区号 表别名SELECT工作区号 表别名USE 关闭所有工作区中的表CLOSEALL 关闭自由表CLOSETABLES表的独占与共享SETEXCLUSIVEONSETEXCLUSIVEOFF 60 有关数据表操作命令 表的独占与共享SETEXCLUSIVEONSETEXCLUSIVEOFF 61 有关记录操作命令 查看表的记录BROWSE FIELDS字段名1 字段名2 FOR条件 FREEZE字段名 NOAPPEND NODELETE NOMODIFY TITLE字符表达式 LIST DISPLAY 范围 FIELDS字段名1 字段名2 FOR条件 WHILE条件 TOPRINT OFF 注意 FOR 在指定范围内对所有满足条件的记录操作WHILE 从当前记录开始到第一个不满足条件记录之间的记录 FIELDS子句用于指定在浏览窗口中出现的字段 各字段之间用逗号分隔 缺省时为所有字段 FOR子句用于筛选记录 只有满足条件的记录才出现在浏览窗口中 FREEZE子句用于指定可以修改的字段 NOAPPEND指定不可向表内追加记录 NODELETE指定不可删除表内的记录 NOMODIFY指定不可修改记录的内容 但可以向表内追加记录和删除记录 TITLE子句用于指定浏览窗口的标题 缺省时为表名 62 有关记录操作命令 记录的筛选SETFILTERTO 条件表达式 字段的筛选SETFIELDTO 字段列表 记录指针的绝对移动GO GOTOn 当n大于记录总数时将拒绝移动 GOTOPGOBOTTOM记录指针的相对移动SKIP n n 0向文件尾方向 n 0向文件头方向 记录的条件定位LOCATE 范围 FOR WHILE 条件 范围ALL 全部记录NEXTn 从当前记录开始的N个记录RECORDn 第N个记录REST 从当前开始到结束的所记录 63 有关记录操作命令 修改表的记录REPLACE字段名1WITH表达式1 ADDITIVE 字段2WITH表达式2 ADDITIVE 范围 FOR条件表达式 记录的逻辑删除DELETE SCOPE FOR条件 IN工作区号 表别名 记录的恢复RECALL SCOPE FOR条件 记录的物理删除PACKZAP 删除所有记录 64 有关记录操作命令 数据的复制COPYTO文件名 FIELDS字段名 范围 FOR条件表达式 类型 SDF XLS DELIMITED WITH分隔符 WITHBLANK WITHTAB WITHCHARACTER分隔符 数据的统计COUNT 范围 FOR条件表达式1 WHILE条件表达式2 TO变量名 NOOPTIMIZE SUMAVERAGE 65 有关索引操作命令 创建索引INDEXON索引表达式TAG索引标识名 FOR条件表达式 ASCENDING DESCENDING UNIQUE CANDIDATE 修改索引使用INDEX命令建立同标识名的索引文件删除索引DELETETAG索引标识名1 索引标识名2 66 有关索引操作命令 设定主控索引SETORDERTO 索引编号 idx文件 TAG TAG名 OFcdx文件 IN工作区 别名 ASCENDING DESCENDING 利用索引快速定位SEEK索引关键字表达式 ORDER索引标识 ASCENDING DESCENDING 注意 SEEK只能在索引过的表中使用 并且只能搜索索引关键字 如找不到相匹配的关键字 则RECNO 将返回表中记录个数 1 FOUND 返回 F EOF 返回 T 67 有关表之间的关系的操作命令 创建表的触发器插入触发器 CREATETRIGGEON表名FORINSERTAS逻辑表达式更新触发器 CREATETRIGGEON表名FORUPDATEAS逻辑表达式删除触发器 CREATETRIGGEON表名FORDELETEAS逻辑表达式触发器的删除DELETETRIGGERON表名FORINSERT UPDATE DELETE 68 有关表之间的关系的操作命令 建立一对一临时关系SETRELATIONTO 关联表达式1 INTO 工作区号1 子表表别名l INTO 工作区号2 子表表别名2 IN 工作区号 父表表别名 ADDITIVE 建立一对多临时关系SETSKIPTO 子表表别名l 子表表别名2 取消关联SETRELATIONOFFINTO 工作区号 子表表别名 69 函数使用小结 有关数据库的函数DBC DBUSED 数据库名 DBGETPROP DBSETPROP 70 查看数据库或当前数据库中字段 表或视图属性语法 DBGETPROP cName cType cProperty cName 指定数据库 字段 表或视图的名称cType 指定cName的类型 是否为当前数据库 或者当前数据库中的一个字段 表或视图cProperty 指定属性名称 具体见教材P104 DBGETPROP cj cj FIELD Caption 例 DBGETPROP 函数 71 设置数据库或当前数据库中字段 表或视图属性语法DBSETPROP cName cType cProperty eValue eValue 指定cProperty的设定值 它的数据类型必须和属性的数据类型相同示例 DBGETPROP cj cj FIELD Caption DBSETPROP xs xh FIELD Caption 学号 DBSETPROP 函数 72 2 有关数据库表的函数 SELECT 函数语法 SELECT 0 1 表别名 功能 测试工作区USED 函数语法 USED 工作区号 表别名 功能 用于一张表是否已被使用ALIAS 函数语法 ALIAS 工作区号 功能 用于返回当前或指定工作区中的表的别名 FIELD 函数语法 FIELD 字段顺序号 工作区号 表别名 功能 用于返回已打开表的指定序号的字段名 FCOUNT 函数语法 FCOUNT 工作区号 表别名 功能 用于返回已打开表的字段的个数 73 3 有关记录的函数 表文件开始测试函数格式 BOF 功能 检测当前表的记录指针是否指向表首记录前的开始标志表文件结束测试函数格式 EOF 功能 检测当前表的记录指针是否指向表末记录后的结束标志记录号测试函数格式 RECNO 功能 返回当前表文件当前记录的记录号 记录查找结果测试函数格式 found 如果没有打开表文件 则函数值为0 如果指针指向了文件尾部 则记录值为最大记录号加1 如果指向文件首部 则记录号为1 74 例 在xs表中要定位到学号为960102的记录上 75 本章小结 本章须掌握的知识点 1 数据库的概念 2 数据库的创建 打开 关闭等基本操作 3 数据库表的创建 添加 4 数据库表的数据扩展属性 数据级和表级 6 永久关系与参照完整性 基本概念 设置 规则 5 数据库表的约束机制及其激活时机 p103 p109
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!