vfp6.0第二章【数据库和表】
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章.数据库和表
必备的知识点
1.二维表的每一列就是一字段(属性),每一行叫做一条记录(元组)。
一张表中最多255个字段,10亿条记录、
2.字段的属性、
每个字段有4个属性:字段名,字段类型,字段宽度,小数位数
字段名的命名:只能包含字母,数字,下划线,汉字;不能含有空格,不能以数字开头,不能以下划线开头。
字段变量的命名和内存变量的命名区别:内存变量可以下划线开头。
字段类型:
考点:
字符型字段最大的宽度是254个字节,127个汉字;日期型的宽度是8个字节,备注型是4个字节,备注型主要用于奖惩情况,个人简介,如果存储OLE对象,照片图片数据则应该设置为通用型。
(一)表的扩展名 .dbf ,表的备注文件的扩展名 .fpt
一个表如果有备注型字段,那么VFP会自动产生一个与表同名的备注文件。
不管备注型字段有多少个,一个表只有一个备注文件。
填写备注字段的内容快捷键:Ctrl+PageDn 或者双击
请问xsda表的备注文件名是xsda.fpt 。
(二)表分为两个部分表结构和表记录(数据)。
(三)表分为数据库表和自由表
数据库表:属于某个数据库的表。
自由表:不属于任何数据库的表。
在某一时刻,一张数据库表只能属于一个数据库。
数据库表和自由表可以相互转换
数据库表和自由表的区别:
1.数据库表支持长字段名(128个字符,64个汉字)。自由表的字段名不超过10个字符。
2.只有数据库表才能设置字段的有效性。
3.只有数据库表才能设置主索引。
create 表名
如:create d:\xs\xsda
打开表设计器创建表。
SQL命令创建表(无需打开表设计器)
create table d:\xsda (姓名C (8),性别C (2),出生日期D ,入学成绩N (5,1),住校否L,照片G)
use d:\abc in 0 alias bm noupdate again
in 0在最小的暂未使用的工作区打开
alias bm 为打开的表到别名
noupdate 不允许修改表的数据,指定为只读
again 再一次打开已经在其它工作区打开的表
exclusive 独占方式。默认的方式
select <工作区号|别名>
select 5 &&选择5号工作区为当前工作区。
use xsda in 1
use xscj in 2 alias cj
select 2 (或者select cj )
补充:可以使用alias 指定表的别名,如果没有使用alias指定别名,表的名字就是别名。
工作区的别名
前10个工作区的别名分别是A~J
函数:select()
函数作用:返回当前工作区区号;
?select()
当前工作区:正在操作的工作区为当前工作区。启动VFP时,1号工作区为默认的当前工作区。
当前表:当前工作区中打开的表
当前记录:记录指针指向的记录为当前记录。打开表时,默认的当前记录为1号记录补充:一个工作区只能打开一个表,如果在同一个工作区打开第二个表,VFP会自动关闭先前打开的表。
举例说明:
e &&关闭当前表
e in 5 &&关闭5号工作区的表
e in C &&关闭3号工作区的表
e in cj &&关闭别名是cj的表
display structure &&分屏显示当前表的结构
结构中总计的宽度=各字段宽度的总和+1
以xsda表为例,表中的姓名无论是“王小阳”还是”张华”,姓名字段的宽度都是定义时的8位宽度。
list structure &&不间断显示(一次性显示)当前表的结构
display|list structure to file d:\abc
将显示的结果输出到指定的文本文件
display |list structure to printer
将显示的结果输出到指定的打印机
display|list structure in 2
显示2号工作区中表的结构
命令:modify structure &&打开表设计器,修改当前表的结构。菜单:显示/表设计器
修改表结构时,修改数据类型,修改宽度,当宽度变小时,数据会丢失。所以在修改表结构前要对表文件进行备份,以免丢失数据。
copy to <表文件名> 【fields 字段列表】【for条件】
复制当前表的数据,创建一个新表。
举例
use xsda
copy to d:\xsda2
将当前表xsda复制备份到D:\,表名为xsda2
例题1:将xsda表中超过430分的学生复制到新表D:\xsda2中
use xsda
copy to d:\xsda2 for 入学成绩> 430
例题2:将xsda表中住校的学生复制到新表D:\xsda3中,新表只要姓名,性别,住校否。
use xsda
copy to d:\xsda3 fields 姓名,性别,住校否for住校否=.T.
copy structure to <表文件名> 【fields 字段列表】
复制当前表的结构,创建一个新表。
菜单显示表的数据:显示--- 浏览
命令:browse 命令
browse [fields字段列表] [for条件][freeze 字段名] [lock 锁定字段数] [noappend] [nodelete] [noedit]
显示数据
display|list[fields字段列表] [for条件] [范围] [off]
[to printer][to file 文件名]
范围