第11章FoxPro数据库基本操作_第1页
第11章FoxPro数据库基本操作_第2页
第11章FoxPro数据库基本操作_第3页
第11章FoxPro数据库基本操作_第4页
第11章FoxPro数据库基本操作_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第11章FoxPro

数据库基本操作命令格式书写约定<>尖括号中的部分为说明性文字,使用时要换成具体的内容[]方括号中的为任选项,在使用时可选可不选|

竖线两边的项目在使用时只能取其中之一,不能同时都选…表示前面的项目可以根据需要重复多次,项目之间要用逗号隔开示例:Dir

[<盘符:>][<路径>][<文件名>]GO TOP

|

BOTTOM?<变量1>[,<变量2>,

…]§1

Visual

FoxPro命令格式<命令动词>

[<限定性短语>]以下是常见限定性子句的几种格式范围—ALL,NEXT<n>,RECORD

<n>,RESTFOR<条件>

—指定命令满足的条件WHILE<条件>

—指定命令继续执行的条件FIELDS<字段名表>

—指定命令操作的字段示例:EDIT

ALL

FOR

班级=‘2001中文专’COUNT

ALL

FOR成绩>60

TOCHENGJICOPY

TO

dabase1

ALL

FOR

性别=‘男’FoxPro命令的一般格式每条命令必须以命令动词开头,之后是限定性短语。若一条命令带有多个限定性短语时,则各限定性短语的先后次序可以任意。命令动词与限定性短语之间,或限定性短语之间至少要用一个空格分隔。命令的最大长度为8192个字符,若一条命令太长可以用分号(;)隔开FoxPro的命令动词、限定性短语、函数名、变量名和文件名中的英语字母不分大小写命令动词可以只用前面的四个字母保留字不能作为文件名、字段名、变量名和数组名FoxPro命令书写规则命令的输入位置—在命令窗口中命令的执行—按回车命令窗口的打开与隐藏FoxPro命令的输入与执行显示磁盘目录列表(四条等价的命令)o

DIR,directory,

list

files,

display

files,以上命令均可以加上相

应参数复制磁盘文件o

COPY

FILE

[<盘符:>][<路径>]<源文件名>TO

[<盘符:>][<路径>]<目标文件名>删除磁盘文件[<盘符:>][<路径>]<源文件名>o

ERASE

DELETE

FILE更改磁盘文件名o

RENAME [<盘符:>][<路径>]<原文件名>

TO <新文件名>建立磁盘目录o

MD

MKDIR[<盘符:>][<路径>]<目录名>在FoxPro系统下的磁盘操作命令改变当前目录o

CD或CHDIR

[<盘符:>][<路径>]<目录名>删除磁盘目录o

RD或RMDIR[<盘符:>][<路径>]<目录名>更改当前驱动器和目录[<盘符:>][<路径>]o

SET

DEFAULT

TO显示文本文件名o

TYPE

[<盘符:>][<路径>]<文件名>在FoxPro系统下的磁盘操作命令§2

自由表结构操作表是数据库管理的基本对象,对于表结构的操作包括:建立、显示、修改、复制一、表结构的建立:1、确定表结构的属性,包括:字段名:自由表中最多为10个字符,不能以数字开头,一个汉字占两个字符字段类型:C字符型;N数值型;D日期型;L逻辑型;M备注型字段宽度:字符型最大为254;数值型最大为20,小数最大为18位(包括符号位和小数点)日期型为8位(系统默认)逻辑型为1位(系统默认)备注型和通用型为4位(系统默认)总宽度与小数宽度的差要大于等于2定义时请遵循课本P363页的五项原则§2

自由表结构操作一、表结构的建立2、建立表结构命令方式:CREATE

[盘符][路径][<表文件主名>.[DBF]]如省略,默认为当前盘当前文件夹,可以利用:SET

DEFAULT

TO[盘符][路径]设置当前文件夹如省略,默认为

DBF如省略,系统将自动打开创建对话框,询问主文件名例如:create

student菜单方式:文件/新建下选择表选框,单击新建文件按钮§2

自由表结构操作一、表结构的建立进入表设计器中后,按前面设计的表结构输入字段名、类型(可用鼠标单击或单击空格键)、宽度(数值型还需输入小数宽度),是否索引(见12章)、是否允许空值(NULL)等。可做插入删除操作。完成后可单击“确定”按钮或按<CTRL>+<W>组合键存盘,出现是否输入记录对话框,点击“是”或“否”退出。注意:如果表结构中有备注型字段,则系统将在磁盘中建立一个主文件名与表主文件名相同,扩展名为FPT的备注型文件,在做文件的复制移动操作时要同时选中进行操作,否则复制或移动后表文件将不能使用。§2

自由表结构操作二、表结构的显示以命令方式进行LIST/DISPLAY

STRUCTURE

[TO

PRINTER]连续显示全部信息满屏暂停将表结构输出到打印机注:此操作针对于当前以打开数据库§2

自由表结构操作三、表结构的修改1、命令方式:MODIFY

STRUCTURE2、菜单方式:“显示/表设计器”命令可以对字段属性进行修改,可以添加、删除、移动(按住字段前方块不放,上下移动鼠标)字段。但为了保证已有数据的安全性和完整型,应遵循以下规则:1、不可同时修改字段名和类型2、不可同时修改字段名和宽度3、插入/删除字段的同时又修改其它字段的字段名§2

自由表结构操作四、复制表结构COPY

STRUCTURE

TO

[盘符][路径]<表文件名>[.DBF][FIELDS<字段名表>]复制后的新表文件名新表中包含字段,中间用逗号分隔,如省略,则包含所有字段例如:use

studentcopy

stru

to

d:\mydbf\stud

fields学号,姓名,性别use

d:\mydbf\studliststru注:此命令只复制结构而不复制记录。小节:本节学习的主要内容为表结构的建立(CREATURE)显示(LIST

STRU/DISP

STRU)、修改

(MODISTRU)、复制(COPY

STRU

TO)其中,显示、修改、复制命令主要针对于当前已打开的数据库(打开方法见下节),应当熟练掌握表结构的建立。练习:在自己的文件下建立如课本363页的表结构,并添加平均成绩(N,6,2)和总成绩(N,6,2)字段。以其结构为基础复制一新表,包括学号、姓名、语文语文成绩、英语成绩、数学成绩,平均成绩,总成绩字段§2

自由表结构操作§3

表记录的操作2、关闭一、表文件的打开与关闭:对于表中记录的所有操作都针对于当前已打开的表文件,打开表文件既是将表结构与记录从外部存储器调入内存中的

一个工作区中,包括相应的备注文件。关闭表既是将表文件

所占用内存资源释放,同时将数据保存到外存储器中,避免

数据丢失。1、打开命令方式:USE[盘符][路径]<表文件名>[.DBF]菜单方式:文件/打开命令,在打开对话框中的文件类型中选择表文件,再在选择位置和文件名即可。USE(常用)CLOSECLOSECLOSETABLESDATABASESALL§3

表记录的操作二、表记录的添加编辑:1、表结构建立完成存盘退出时,在是否输入数据对话框中如果选择了“是”,则直接进入添加记录的编辑窗口中。另外,再次添加记录时可使用以下命令:APPEND

[BLANK]只在表文件的最后添加一条空白记录而不进入到编辑窗口中2、常用编辑键:见课本P371页§3

表记录的操作二、表记录的添加编辑3、备注型字段的编辑将光标移到备注型字段上后,利用<CTRL>+<PgUp>或<CTRL>+<PgDn>组合;或利用鼠标双击备注字段后即可进入备注字段编辑窗口中,输入完成后利用<CTRL>+<W>键存盘退出。编辑方法等等同“记事本”操作4、通用型字段的编辑

打开方法同备注型字段在“编辑”菜单中选择“插入对象”命令后选择要存放的对象类型,如要插入的对象已以文件的形式保存在磁盘中,可选“由文件创建”,如无,选“新建”后再选择对象类型。

系统会自动打开对象编辑器,如无则可双击对象即可§3

表记录的操作三、表记录的浏览BROWSE

[FIELDS<字段名表>]LOCK[<数值表达式>][FREEZE<字段名>][NOAPPEND][NOMODIFY][NODELETE][NOMENU]FIELDS

指明浏览的字段名,中间用逗号分隔LOCK

锁顶浏览窗口左边的若干字段,个数由数值表达式确定FREEZE

光标只能在指明的<字段名>中移动NOAPPEND

禁止追加记录

NOMODIFY

禁止修改记录

NODELETE

禁止删除记录NOMENU

在菜单栏中不显示“表”菜单项。“表”菜单项可以对记录进行删除、追加、调整等一系列操作§3

表记录的操作四、表记录的显示1、范围:LIST/DISPLAY

[<范围>][FIELDS<表达式表>][FOR<条件>][WHILE<条件>][OFF][TO

PRINTER]ALL

所有记录NEXT

<n>从当前记录开始的n条记录RECORD

<n>记录号为n的记录

REST

从当前记录到最后一条记录2、FOR<条件>:显示所有符合条件的记录WHILE<条件>:显示第一条不符合条件记录以前所有符合条件的记录。WHILE优先级大于FOR§3

表记录的操作四、表记录的显示3、两者异同:相同点:将指定范围内符合条件的记录显示在屏幕上不同点:如果没指定<范围>和<条件>,LIST默认显示所有记录,DISPLAY默认显示当前的一条记录。在指定<范围>和<条件>的情况下,LIST为自动滚屏显示,而DISPLAY

为满屏暂停显示。例如:显示STUDENT表中所有没入党的学生记录的姓名和性别USE

studentLIST/DISP ALL

FOR

.NOT.入党否FIELDS姓名,性别§3

表记录的操作五、表记录的定位当前记录、记录指针1、绝对定位与记录测试函数绝对定位:[GO/GOTO]<数值表达式>|TOP|BOTTOM可省略指明要指向的记录号第一条记录最后一条记录例如:将记录好指向记录号为5的记录Go

5

5§3

表记录的操作五、表记录的定位记录测试函数:RECNO()当前记录的记录号BOF()指针是否位于第一条记录之前

EOF()指真是否位于最后一条记录之后

RECCOUNT()表文件中的记录个数返回.T.或.F.注:BOF位置的记录号为第一条记录的记录号,EOF位置的记录号为RECCOUNT()+1例如:

Use

studentList?bof(),eof(),reccount(),recno()§3

表记录的操作五、表记录的定位2、相对定位SKIP

[<数值表达式>]<数值表达式>为整数型表达式,可为正+或负-,为正是时向EOF位置跳转,为负时向BOF位置跳转。+1可以省略例如:Use

studentSkip

int(reccount()/2+0.5)§3

表记录的操作五、表记录的定位3、条件定位(顺序查询)LOCATE

[<范围>]

[FOR

<条件>]CONTINUE默认为ALL默认为.T.按最近一次的

LOCA范围和条件继续查询FOUND()测试函数,找到返回.T.没找到返回.F.§3

表记录的操作六、表记录的插入和删除1、记录的插入INSERT

[BLANK]

[BEFORE]插入一条空白记录而不进入编辑状态在当前记录的前方插入一条记录,默认在当前记录之后注:插入记录以当前记录为基础,编辑窗口与方法与APPEND等同,记录号自动变更§3

表记录的操作六、表记录的插入和删除2、记录的删除:逻辑删除(*)

物理删除(不可恢复)逻辑恢复逻辑删除DELETE

[<范围>][FOR<条件>]逻辑恢复RECALL

[<范围>][FOR<条件>]如不指明范围和条件,默认为当前记录SET

DELETE

ON|OFF显示删除记录不显示删除记录,对BROW、APPEND、EDIT、INSERT等命令无效§3

表记录的操作六、表记录的插入和删除物理删除:PACK不经过逻辑删除而清空表中所有记录:ZAPZAP==Delete

allpack§3

表记录的操作七、表记录的编辑和替换1、编辑(修改)EDIT|CHANGE [<范围>][FOR<条件>][FIELDS<字段名表>]如不指明范围和条件,默认为从当前记录开始指明要编辑的字段,用逗号分隔注:编辑窗口与编辑方法与APPEND相同§3

表记录的操作七、表记录的编辑和替换2、表记录的替换REPLACE

[<范围>]

<字段名1> WITH

<表达式1>[,<字段名2>

WITH

<表达式2>,…]

[FOR

<条件>]如不指明范围和条件,默认为当前记录类型必须一致注:如果表达式的值大于字段宽度,字符型将右边超出部分截去,数值型首先减少小数宽度,再尝试用科学计数法,再用*表示。§3

表记录的操作七、表记录的编辑和替换例如:1、分别求出STUDENT中每位同学的总成绩和平均成绩,并添入相应的字段。Use

studentRepl

all总成绩with

语文成绩+数学成绩+外语成绩,平均成绩with

总成绩/32、修改STUDENT结构,添加并修改“是否补考”字段,即三门课程的成绩有一门小于60的,是否补考字段的值既为真值Use

studentModi

struRepl

ALL是否补考with.T.for语文成绩<60.and.

数学成绩<60.and.

外语成绩<60§3

表记录的操作八、表记录的复制与追加1、记录的复制文件类型视TYPE类型而

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论