计算机文化基础 第10章 数据表的基本操作
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
插入记录 insert
格式:insert [before][blank] insert 功能:在当前记录的前面或后面插入一条新记录。 的前面或后面插入一条新记录。 在当前记录的前面或后面插入一条新记录
1、省略before 和blank(即无可选项)时,把新记录 插入在当前记录之后,进入编辑状态。 2、 有[before],在当前记录之前 之前插入一条新纪录,进入 之前 编辑状态。 3、有[blank],当前记录之后 之后插入一条空纪录,不进入 之后 编辑状态。
记录恢复示例:去掉所有男职工记录的删除标记。
所有男职工 记录的删除 标记已经去 掉。
3.物理删除命令pack
格式:pack 格式 功能:真正删除所有被逻辑删除(加删除标记) 功能 的记录 说明: 说明:永久删除带有逻辑删除标记的记录,其他 记录重新排号 例题: 例题:
记录的定位—条件定位 (2)
例1:查找姓名为“赵斌”的人,并显示他的记录内 容。
姓名是字符型字 段的名字 名字,不 名字 需要定界符,而 “赵斌”是字符 型字段的值, 值 需要加定界符。
想想为什么不用 list 命令。
记录的定位—条件定位 (3)
例2:查找编号为 “0202”的人,并显示结果。
1、明白两个found() 函数的显示结果。 2、想想,为什么这 个display命令执行完 后,屏幕上没有显示。
说明: 说明:
1、若省略范围和 for<条件>,表示仅对当前记录 当前记录进行替换。 当前记录 2、若有for <条件>,则修改所有符合条件的记录。 3、<表达式>值的类型应与<字段名>值的类型相同,宽度应不 超过原字段的宽度。
例题: 例题:
例1:以下几条命令实现的功能是什么? :以下几条命令实现的功能是什么?
wenku.baidu.com
例3:将工程师的奖金提高 :将工程师的奖金提高10%。 。
Repl 奖金 with 奖金 奖金*1.1 for 职称 ‘工程师’ 职称=‘工程师’ List
第四节 添加记录
常用的添加记录的方式有两种 1、追加记录: append 2、插入记录: insert
添加记录 ——
追加记录 append
格式:append [blank] append
第四条记录 前加上了删 除标记*
删除记录—— 逻辑删除
例2: 给所有男职工记录加删除标记。
所有男职 工记录都 已经加上 了删除标 记*
2.恢复逻辑删除命令recall
格式:recall [<范围 范围>] [for/while<条件 条件>] 范围 条件 功能:恢复范围内符合条件的被逻辑删除的记录 说明:在全屏编辑命令 (append,insert,edit,browse,change)中可用 Ctrl+T (append,insert,edit,browse,change) 来进行逻辑删除和恢复 例题:
修改记录— replace
范围] 字段名 字段名1> 表达式1> 格式:replace [范围 <字段名 with <表达式 [additive] 范围 表达式
[,字段名 with 表达式 [additive]]… [for <条件 字段名2 表达式2 条件>] 字段名 条件 功能: 对当前表文件中给定[范围 功能: 范围]内符合<条件>的记录进行 范围 修改,用<表达式1>的值替换<字段名1>原来的值,用<表达 式2>的值替换<字段名2>原来的值…。
1、逻辑删除
格式: DELETE [范围 [ FOR 〈 条件〉] 范围] 条件〉 范围 功能:给指定范围内符合条件的记录加上删除标记。 说明: 若不指定范围或条件,只给当前记录加上删除标记。 逻辑删除标记为“*” 看图说明 : 例1 例2
删除记录 —— 逻辑删除
例1: 给第四条记录加上删除标记。
如查到 查到符合条件的记录,则found( )=.t. 查到 如在<记录范围>内查不到 查不到符合条件的记录,found( )=.f. 查不到 如在all范围内查不到 查不到符合条件的记录,则found()=.f. eof()=.t 查不到
3、可通过continue 命令继续查找其他符合条件的记录。 例题: 例2 例3 例题: 例1
修改记录—— browse
1.保存修改内容:单 : 关闭’ 击‘关闭’或按 Ctrl+W;2.放弃修改: ; 按Esc; ; 3.追加一个空记录: 按Ctrl+Y
说明:browse命令主要用于记录的修改,因此启动后不进入追 命令主要用于记录的修改, 说明 命令主要用于记录的修改 使它进入记录追加状态。 加状态。必须由用户通过Ctrl+Y使它进入记录追加状态。如 加状态。必须由用户通过 使它进入记录追加状态 果表文件是个空文件(记录个数为0) 就无法启动。 果表文件是个空文件(记录个数为 )则browse就无法启动。 就无法启动
记录的定位—相对定位 (2):例1
说明: 1、Recno() 函数的功能是:
返回当前记录的记录号。 ? —表示显示其后面表达式 的结果。 表文件刚打开时,指针指向 第一条记录。 2、Skip 即 skip 1
记录的定位—相对定位 (3):例2
1、bof() 函数的功能 是:测试记录指针是
否指向文件头,若是, 则返回值为.t. ,否则 返回值为.f. 。 2、指针到达或超过文 指针到达 指针到达或超过文
计算机文化基础
第10章 数据表的基本操作 10章
第一节 表结构显示与修改
1、显示表的结构
格式:LIST/DISPLAY STRUCTURE [TO PRINT] 功能:显示(打印)当前已打开的数据库文件结构 说明:首先必须打开库文件。 LIST是连续显示全部内容;DISPLAY是分屏显示
2、修改表的结构
修改记录—edit
1.保存修改内容:单 : 关闭’ 击‘关闭’或按 Ctrl+W;2.放弃修改: ; 按Esc; ; 3.追加一个空记录: 按Ctrl+Y
修改记录—— change
1.保存修改内容:单 : 关闭’ 击‘关闭’或按 Ctrl+W;2.放弃修改: ; 按Esc; ; 3.追加一个空记录: 按Ctrl+Y
如果表的字段名、字段宽度、字段类型在定义时出现 错误,那么,就要修改表的结构。例如,奖金字段,应该是 数值型,结果被定义成字符型了。 在修改表结构之前,一定要先打开表文件 先打开表文件,然后用 先打开表文件 modify structure 命令修改。
命令格式: modify structure 功能: 进入表设计器状态,对当前表文件结构进行修改。
件头时, 件头时, recno()=1且bof()=.t. 且
记录的定位—相对定位 (4):例3
1、Eof() 函数的功能 是:测试记录指针是
否指向文件尾,若是, 则返回值为.t. ,否则 返回值为.f. 。 2、指针到达或超过文 指针到达 指针到达或超过文
件尾时, 件尾时, recno( )=总记录数 总记录数 +1 且eof( )=.t.
use rsda go 3 disp repl 基本工资 with 400 disp
解答: 解答: 功能是将第三条记录的基本工资修改为400 功能是将第三条记录的基本工资修改为
条记录的奖金提高10% 例2:将第 条记录的奖金提高 :将第5条记录的奖金提高
Go 5 Disp Repl 奖金 with 奖金 奖金*1.1 Disp
二、间接删除
间接删除表文件中的记录需要进行两步操作。 第一步是给记录加上删除标记(*),叫做逻辑删除; 第一步 第二步是用pack命令彻底删除带有删除标记(*) 的 第二步 记录,又叫做物理删除。在执行pack命令之前,还 可以用恢复命令 recall 抹掉删除标记,将此记录恢 恢复命令 复正常。 逻辑删除 物理删除 记录恢复
第五节 删除记录
记录的删除有两种方法,直接删除 间接删除 直接删除和间接删除 直接删除
一、直接删除: ZAP
格式: ZAP 功能:将表文件里的记录全部删除。(真正删除) 说明: 1、使用zap命令时要小心,因为它将删除掉表文件中的所 有记录,只留下表的结构。 2、如果只想删除指定的记录,则不能用zap命令,而应该 采用间接删除法。
记录的定位——绝对定位 (2)
请参照例题练习, 注意屏幕上所显 示记录的内容及 记录号。
记录的定位——相对定位 (1)
相对于当前记录的记录指针的移动
格式: 数值表达式〉 格式: SKIP 〈数值表达式〉 eg. skip 2 功能: 将记录指针相对于当前记录,向前或向后移动若干条记录 功能 <数值表达式>的取值(假设为n)决定指针的移动方向, >0 向前(文件尾方向)移动n个; ) n 值>0则指针向前( 向前 向后(文件头方向)移动n个 值<0则指针向后 向后 说明: 说明:1、不带<数值表达式>则系统默认值为1 eg. Skip 第一条记录≠文件头 2、第一条记录 文件头;最后一条记录 文件尾 第一条记录 文件头;最后一条记录≠文件尾 文件头:指第一条记录的上面。 文件尾:指最后一条记录的下面。 3、学习相对定位时,会遇到几个重要的函数 函数,请留意。 函数 例题: 例2:bof() 例3:eof() 例题: 例1:recno()
记录的定位——绝对定位 (1)
格式1: 数值型表达式〉 格式 : GOTO / GO 〈数值型表达式〉 功能: 将当前记录定位到数值表达式指定的记录上 功能 说明: 说明 goto/go可省略, <数值表达式>的运算结果自动取整。 例如: 例如: GO 3 (将指针指向表文件的第3条记录) 格式2: 格式 : GO TOP (将指针指向表文件的第 1 条记录) GO BOTTOM (将指针指向表文件的最后 1 条记录) 看图说明
记录的定位——条件定位 (1)
按条件顺次查找
格式: for/while〈 格式: locate [ 记录范围 ] for/while〈 条件 〉 功能: 功能:在给定[记录范围]内,按记录顺序,查找符合<条件>的 第一条记录,若找到则将记录指针指向该记录,若找不到, 第一条 则将记录指针指向给定范围内的最后一条记录 文件尾 给定范围内的最后一条记录或文件尾 给定范围内的最后一条记录 文件尾。 说明: 说明 1、如省略范围,则默认值为all。 2、可以通过 found() 函数,判断是否找到符合条件的记录。
记录的定位—条件定位 (4)
例3:查找奖金是 40元以上的人,并显示结果。
1、40是数值型 数值型 的值,不需要加 字符型定界符。 2、用continue 命令继续查找
3、想想,为什么这 个display命令执行完 后,屏幕上没有显示。
第三节 修改记录
记录的编辑修改可以分为全屏幕编辑和单命令修 改两种。 1、全屏幕编辑命令: Edit Change Browse 功能:编辑记录范围内符合条件的记录中指定的字段值 2、替换命令:Replace
功能:在表文件的末尾追加记录。 说明:
1、不加可选项[blank]表示在表文件末尾添加一条新记 录,进入编辑状态。 2、加上可选项[blank]表示在表文件末尾添加一条空记 录,不进入编辑状态。 3、append blank 命令可以和replace命令联合使用 增加一条新记录。
添加记录 ——
说明:
看图说明
修改表的结构
1、先打开表文件。 2、输入修改结构 的命令并回车, 进入到下面的表 设计器界面。
第二节 记录的定位
1、当前记录—— 用户当前正在处理的记录叫做当前记录。 、 2、记录指针 —— 每个表文件中,都有一个记录指针(注意与备 、 注型字段的指针不同),记录指针指向的记录就是当前记录 记录指针指向的记录就是当前记录。当用 记录指针指向的记录就是当前记录 户要对某一条记录进行处理的时候,要先将记录指针指向这条记录, 使这条记录变为当前记录,然后才能处理。 3、记录指针的定位 —— 为了处理不同的记录,需要不断改变记 、 录指针的位置。这个移动记录指针的位置,使不同记录成为当前记 移动记录指针的位置, 移动记录指针的位置 录的过程叫做记录指针的定位 记录指针的定位。 录的过程 记录指针的定位 记录指针的定位分为: 绝对定位、相对定位、条件定位 。 绝对定位、相对定位、 注意:字段变量的值随记录指针的移动而变化 注意: 4、利用?recno( )来检测被定位的当前记录号