1、高一数据库基础复习材料一、关于数据库:(1)数据处理:指的是收集、组织、加工、存储、传送各类数据的过程。(2)数据库 :是存储在计算机里的按一定规则相互关联的数据的集合。(3)按数据的组织与管理方式分,数据库有关系型数据库、层次型数据库和网络型数据库等三大类。目前,微型计算机中常用的是关系型数据库。(4)把关系型数据库中的数据看做二维表格的元素,表格的结构体现的是数据之间的关系。在这种二维表格中,每一行叫做一个记录,每一列叫做一个字段。(5)数据库管理系统 是用来建立数据库,完成数据库的维护、管理等操作,并能够帮助用户方便地使用数据库的软件。如:Foxpro,Access等。(6)多数foxp
2、ro命令带有范围 Fields For 等个常用子句。在命令中如果缺省范围短语,不同的命令有不同的默认值。例如:Browse,List ,Count,Sum,Average,Sort等命令的范围默认为ALL;Display,Delete,Replace,recall 等命令的范围默认为当前记录。命令中如果包括For短语,但缺省范围短语,则无论该命令的原范围默认值是什么,范围一律默认为All. 二、建立数据库:1、建立数据库结构(类似于建立二维表格的表头)菜单方式:FileNewTable/DBF。命令方式: CREAte 文件名(Ctrl+F2可打开命令窗口)目的:确定数据库中各个字段的名称、
3、类型、宽度、小数位数等参数,然后再输入数据。2、输入数据(1) 在建立数据库结构后,窗口提示“Input data records now? 点击yes”,则可开始输入数据。(2) 利用APPEnd命令在所有记录的最后面追加数据。(3) 关闭数据库在命令窗口输入USE后,回车。(4) 有关内容:P143P151(5) 复习练习:P152三、使用数据库:1、打开数据库菜单方式:FileOpen,选中数据库文件后,单击Open命令方式:USE 文件名 (注:数据库文件的扩展名是dbf ,注意文件存放的路径)2、查看数据库结构(注:应先打开数据库 ,下同)菜单方式:DatabaseSetup命令方式
4、:MODIfy STRUcture(可更改库结构 )LIST STRUcture (可查看库结构但不可更改库结构 )3、查看数据库所有记录命令方式:BROWSE |LIST |DISPLAY FOR FIELDS范围参数: ALL 对所有记录操作。 NEXT n 对从当前记录起的连续 n个记录操作(包括当前记录)。 REST 对从当前记录起的以下剩余记录操作(包括当前记录)。 RECOrd n 对第 n个记录操作。不指定 BROWSE和LIST默认对所有记录进行操作,DISPLAY默认对当前记录进行操作。BROWSE命令FIELDS关键字不能省略。For 条件:对指定范围中那些符合条件的记录进
5、行操作。例:设有文件名为CHENGJI.DBF的学生成绩数据库,显示考试成绩大于500分的学生姓名、学号、总分。(注意:逗号必须是半角字符 )(1) LIST FIELDS 姓名,学号,总分 FOR 总分500 (2) DISPlayALL 姓名,学号,总分FOR 总分500 (3) BROWse FIELDS 姓名,学号,总分 FOR 总分500关于条件表达式算术运算符: + * / (乘方)关系运算符: = =X=-1 表示为: X= -1 .AND. X10或 X10 .OR. X= 5 计算机成绩不为 . F. 表示为: . NOT . 计算机= .F. 说明:在条件表达式里: 1)
6、字符型数据必须用单引号括起来,如 学号 010228 2) 日期型数据必须用大括号括起来,如 出生日期75/12/23 3) 逻辑型数据必须在T或F前后个加一个圆点 如:计算机.T. 性别.F.(2)菜单方式:DatabaseBrowse4、统计运算1)求和(纵向求和):对所有记录求和,并把结果存到内存变量中: 命令方式:SUM 字段名列表 To 例:SUM 英语,数学,语文to English,maths,chinese对满足一定条件的记录求和,并把结果存到内存变量中:命令方式:SUM 字段名列表 FOR To例:SUM 英语,数学,语文 FOR 寄读=. T.2)求平均数: 对所有记录求平
7、均数,并把结果存放到内存变量中:命令方式:AVERage 字段名表 To例:AVER 英语,数学,语文 to English,maths,chinese对满足一定条件的记录求平均数:命令方式:AVERage 字段名列表 FOR To 例:AVER 英语,数学,语文 FOR 寄读=.T.3)计数: 统计数据库的记录数: 命令方式:COUNt 统计满足一定条件的记录数:命令方式: COUNt FOR To例1:COUN FOR 寄读=.T. to renshu COUN FOR 外语=60例2:将计数后的结果保存在指定变量里: COUN FOR 寄读=.T. TO JD若要查看JD的值,可在命令窗
8、口执行 ?JD 或 ? 寄读人数= ,JD 说明:如果sum、average、count命令不指定范围,默认对所有记录进行操作。5、有关内容:P153P1606、复习练习:P160四、维护数据库:1、关于记录指针记录号 数据库中一般都有很多条记录,为确定记录在数据库中的位置,每个记录都有一个编号,叫做记录号。记录指针 FoxPro还设置一个记录指针,使它指向某个记录。当前记录 记录指针指示的记录,叫做当前记录。记录指针的值 当前记录的记录号,也叫做记录指针的值。在状态栏中显示的标志 “ Record:n/m ”m是当前打开的数据库中记录的总数,n就是当前记录的记录号。记录指针定位 利用FoxP
9、ro的命令,可以移动记录指针的位置,使指定的记录变成当前记录。移动记录指针的操作,叫做记录指针定位。记录指针定位的方法:1) n 在命令窗口中,输入某一数字n 然后回车,则指针移到记录号为n的记录上。2) GO n 在命令窗口中,输入 GO n 然后回车,则记录指针移到记录号为n的记录上。3) GO TOP 在命令窗口中,输入 GO TOP 然后回车,则记录指针移到数据库的首记录。4) GO BOTTom 在命令窗口中,输入 GO BOTT 然后回车,则记录指针移到数据库的末尾记录。5) SKIP +n 在命令窗口中,输入 SKIP +n 然后回车,则记录指针从当前位置按索引排序的顺序向下移动
10、n个记录。6) SKIP - n 在命令窗口中,输入 SKIP -n 然后回车,则记录指针从当前位置按索引排序的的顺序向上移动n 个记录。7) SKIP 在命令窗口中,输入 SKIP 然后回车,默认为 SKIP +1。2、插入记录 (P162) 命令方式:INSErt BLANK BEFORE(1) INSErt 在当前记录后插入一个新记录。在屏幕上会出现Change窗口,以单记录方式等待用户输入新记录。(2) INSErt BEFOre 在当前记录前插入一个新记录。在屏幕上会出现Change窗口,以单记录方式等待用户输入新记录。(3) INSErt Blank 直接在当前记录后插入一个空记录
11、。(4) INSErt Blank BEFOre直接在当前记录前插入一个空记录。3、逻辑删除(P163)命令方式:DELEte FOR 对当前库文件中指定范围内满足一定条件的记录加上逻辑删除标记,若所有可选项缺省,则仅将当前记录加上逻辑删除标记。4、恢复逻辑删除 (P164)命令方式:RECAll FOR 对符合条件的记录, 取消逻辑删除标记。若所有可选项缺省,则仅将当前记录取消逻辑删除标记。说明:用browse命令方式打开浏览窗口后,用鼠标单击每个记录第一个字段左边的矩形标记,可以使他们从灰色变成黑色,或使他们从黑色变成灰色。用这种方法也可以完成逻辑删除或逻辑恢复。5、物理删除 (P164)
12、命令方式:PACK对已经加上逻辑删除标记的所有记录,从数据库中真正删掉。6、删除所有记录 (P165)命令方式:ZAP删除数据库中所有记录(不论此记录是否有逻辑删除标记),只保留数据库结构。7、修改记录中的数据 (P166)命令方式:EDIT 修改当前记录中数据; 使用EDIT命令打开窗口后也可利用鼠标操作,通过滚动条找到要修改的数据,完成对其他记录的修改操作。说明:使用BROWse命令浏览时也可以修改记录中的数据。 使用菜单方式操作RecordChange 也可以修改当前记录,或通过滚动条找到要修改的数据完成修改。8、替换数据库记录 (P167)命令方式:REPLace For With 计
13、算机执行REPLACE命令时,会在范围参数指定的范围之内,对符合条件的记录用表达式的值替换字段名指定的内容。范围参数: 不指定 默认对当前记录操作。 ALL 对所有记录操作。 NEXT n 对从当前记录起的连续 n个记录操作。 REST 对从当前记录起的以下剩余记录操作。 RECOrd n 对第 n个记录操作。For 条件:对指定范围中那些符合条件的记录进行操作。9、复制数据库 (P168)命令方式:COPy TO For Fields 功能说明:把当前库文件中选定的部分记录和部分字段复制成一个新库文件。如果命令中各可选项缺省,则复制所得的新库文件为当前文件的一个副本。范围参数: ALL 对所
14、有记录操作。 NEXT n 对从当前记录起的以下 n个记录操作。 REST 对从当前记录起的以下其余记录操作。 RECOrd n 对第 n个记录操作。 不指定 对所有记录操作。 For 条件:对指定范围中那些符合条件的记录进行操作。Fields :指定字段,多个字段用逗号隔开。补充说明:所备份的数据库文件的存放位置在哪呢? 如果不说明路径,则默认为 c:foxprow(这可以在Foxpro的快捷方式上点击右键,选择属性,在起始位置文本框中进行修改)如果说明路径,例:c:mydocu1 c盘上的我的文档下c:windowsdesktop 桌面上例如:要在d盘stu文件夹下存放01.dbf文件,则
15、其命令为COPY to d:stu01.dbf10、复制数据库结构 (P169)命令方式:COPY STRUcture To Fields 说明:Fields :指定新库中包含的字段,多个字段用逗号隔开。11、修改数据库结构 (P169)命令方式:MODIfy STRUcture 菜单方式:DatabaseSetup12、有关内容:P161P170 13、复习练习:P165、P168、P171 五、排序、查询1、分类排序 (P171)简析: 排序就是根据库文件的某些字段值重排记录。排序后将产生一个新的数据库文件,文件中的记录按照新的顺序排列,原数据库文件形式不变。命令方式:SORT TO ON
16、 /A | /D/C , /A | /D /C FOR FIELDS 说明: 括号表示可选项。SORT命令可采用多重排序,即先按主排序字段排序,如果字段中某些数据相同,再按第二排序字段 排序。依此类推。选项/A和/D用来指定升序或降序,缺省时按升序排序。选项/C表示不区分字段值中的字母大小写,即把同一字母的大写与小写看成一样的。若缺省、FOR等子句,表示对所有记录排序。 范围: ALL 对所有记录操作。 NEXT n 对从当前记录起的连续 n个记录操作。 REST 对从当前记录起的以下其余记录操作。 RECOrd n 对第 n个记录操作。 不指定 对所有记录操作。For 条件:选择指定范围中那
17、些符合条件的记录进行排序。Fields: 选择新数据库中所要包含的字段。2、索引排序(P 173)(1)索引文件的建立命令方式:(先打开要建立索引的库文件)Index on To For 说明:为字段名,索引文件的逻辑顺序默认为升序排列。索引关键字也可以写成表达式。例1:本题要求按总分字段建立降序排列的索引文件,则可以将关键字写成“1000-总分”或写成“-总分”。例2:要求按数学和语文成绩之和建立降序排列的索引文件,则可以将关键字写成:-(数学+语文)TO子句建立的索引文件默认扩展名为.IDX,TO子句不能缺省。在同一个数据库文件中,可以对不同字段建立多个索引文件。(2)索引文件的使用 命令
18、:Set index to 功能:打开当前库文件的一个或多个索引文件并确定控制索引文件。说明:可包含多个索引文件,索引文件名之间以逗号分隔,表中第一个索引文件为控制索引文件。 库文件关闭时索引文件就随之关闭。4、定位查询 (P175)命令方式:LOCAte 范围 FOR 简析:LOCATE命令是在指定范围内顺序查找符合条件的第一条记录,找到后,系统自动将记录指针指向该记录。若找到符合条件的记录还要继续查找,可以执行CONTtinue命令。如此继续,直到状态栏中显示“End of locate scope”,即找不到符合条件的记录为止。此时记录指针指向文件结尾处。例如:在执行LOCATE FOR
19、 总分=680的命令后,系统将指针指向当前数据库中第一条满足总分=680的记录,执行DISPLAY 后,系统将该记录数据显示在工作区(主窗口)中。5、索引查询:命令方式: Seek 简析:SEEK命令的功能是在已建立了索引的数据库中按建立索引的关键字搜索满足条件的第一条记录。若找到,记录指针指向该记录,若找不到满足条件的记录,则在状态栏中显示“NO FIND”。Seek可用来搜索字符型、日期型和数值型数据,查找的数据类型必须与索引文件中关键字的类型一致说明:在使用Seek命令以后输入下面的命令? RECNO () 可用来在工作区显示所找到的记录号(当前记录号)。?Found() 有找到则在工作
20、区显示.T. ;没有找到则显示.F.6、有关内容:P171P1757、复习练习:P177 (1)、(3)六掌握Foxpro中简单程序的编制:1建立程序文件菜单操作方式:Filenewprogramnew程序扩展名为:.prg(简单索引文件扩展名:.idx数据库文件扩展名为:.dbf)字符命令方式:modify command 2运行程序do 3.程序的编制分支语句:if 语句块 if 语句块1else 语句块2endif循环语句:for = to 循环语句next流程图:循环变量=初值初值,终值 FT循环语句 do while 循环体条件表达式值end doFT循环语句注:fornext 用于己知循环次数的循环 dowhile 用于未知循环次数的循环 10