1、
实验四 数据库、表相关操作实验
一、 创建表
步骤:
l 创建项目 create database
l 创建数据库
l 创建表,各表结构如下
表:学生基本信息
字段号
字段名
数据类型
宽度
小数位数
1
学号*
c
12
2
姓名
c
8
3
性别
c
2
4
班级
c
10
5
籍贯
c
20
6
电话
c
11
7
特长
m
4
表:课程
字段号
字段名
数据类型
宽度
小数位数
1
课程号*
c
4
2
课程名
c
10
2、3
教师号
C
8
4
学时
c
3
表:成绩
字段号
字段名
数据类型
宽度
小数位数
1
学号
c
12
2
课程号
C
4
3
成绩
n
6
2
l 为各表添加实验数据
二、 对表进行相关操作
显示基本信息表的内容(browse、list、display的区别)
在基本信息表中第一条记录后添加一条记录
在课程表未尾添加一条记录
设置隐藏逻辑删除记录SET DELETED ON | OFF,
删除基本信息表中性别是男的记录
显示该表的信息
恢复隐藏逻辑删除记录SET DELET
3、ED OFF
显示该表信息
恢复已经删除的记录
物理删除成绩表中的一条记录
批量修改:修改基本表的结构,将学号改为14位,修改数据,把所有性别为男的同学的学号前加“10”,女同学的学号前加“20”
三、 定位
1 绝对定位与现实
基本信息表定位到第5条记录
显示当前记录
显示所有记录
显示之后的3条记录
显示之后的所有记录
2 定位并进行检测
打开课程表、输入以下命令
? RECNO( ), BOF( ), EOF( ) (1.F. .F.)
SKIP -1
? RECNO( ), BOF( ), EOF( )
4、 (1 .T. .F.)
8
? RECNO( ), BOF( ), EOF( ) (8 .F. .F.)
GO BOTT
? RECNO( ), BOF( ), EOF( ) (10 .F. .F.)
SKIP
? RECNO( ), BOF( ), EOF( ) (11 .F. .T.)
3 locate for及 CONTINUE命令:
【格式】LOCATE [FOR <条件>] [<范围>]
【功能】在指定范围内查找满足条件的记录。
【说明】 ★
5、LOCATE 命令只能查找满足条件的第一条记录。
★ [<范围>] 省略:FOR—ALL;
★同时省略 <范围> <条件> —指针定位到首记录
若找到满足条件的记录,则记录指针指向该记录,并将函数FOUND( )(用于检测是否找到满足条件的记录)置为.T.;否则,记录指针指向<范围>的底部或文件结束标志,并且将函数FOUND( )置为.F.,并在状态栏给出提示信息“已到定位范围末尾”。
LOCATE找到第一条满足条件的记录后,可以用CONTINUE继续查找下一个满足条件的记录。
例:在STUD.DBF中查找所有学号前四位为0111的同学记录。
USE STUD
LOCATE FOR 学号=“0111”
DO WHILE FOUND( )
……
CONTINUE
END DO
参照上述例子,编写一个程序实现如下功能:把成绩表中课程号为“1001”的成绩更改为(成绩)1/2*10
四、 sort to 物理排序命令
对基本信息表按照班级、男女、姓名重新排序,产生一个新的表: “基本信息_排序”