2008职称计算机考试(数据库操作示例详解)
o5>/}wIf U%L
-NMe \kxh#{$z? 示例一:
{-Yee[d<? 题目要求:说明:下面所提到的“当前目录”是指答题文件夹中的FOXKT文件夹;而且以下文件名、字段名、字段值中的字母和数字都是英文半角字符。
mIRAS"Q!m D{>\-]\ 在FoxPro环境中进行如下操作:
`y'aH
'EEd 1、创建数据表(2分):在当前目录(FOXKT文件夹)中创建数据表STRUH.DBF,结构如下:
R+s1[Z Field Name Type Width Dec
)]wuF` XYts8}y5 图书名称 Character 30
O'OFz}x), *=TYVM9 作者 Character 10
ZlrhC= 0 wsqLXZI 出版日期 Date
%w$mSG >zFD$ 印刷量 Numeric 8 0
[NL -! 解析创建数据表:
[$;,Ua-mt Ø启动Visual foxpro,在“文件”菜单下选择“新建”;
$]1qbE+ Ø打开“新建”对话框,然后选择“表”单选按钮,再单击“新建文件”;
e]+7DE Ø此时打开“创建”窗口,选择文件保存的位置为C:\CZKT\FOXKT,输入表名为:STRUH.DBF然后单击“保存”;
w
[L&* Ø弹出“表设计器”对话框,此时根据给定的字段名、类型、宽度创建表。注意:Character字符型、Date日期型、Numeric数值型(注意小数及整数位)
z#RuwB+ Ø输入完毕单击“确定”,此时弹出“此时输入数据记录吗?”提示,由于题目无要求,所以单击“否”,第一题完成。
&5d\~{; GoazH?% .D!WO ?]5Ix1 2、数据计算(4分):在当前目录下打开FoxH.DBF,计算所有记录的“总分”列,计算公式为:
"
<Qm
- 总分 = 数学 + 物理 + 化学
G~(&3
解析数据计算:
aV#h5s Ø打开目录C:\CZKT\FOXKT中FoxH.DBF表,然后单击“显示”菜单选择:
S_$nCyaH2 “浏览(B)”Foxh(c:\czkt\foxkt\foxh.dbf)””浏览FoxH.DBF表数据内容;
Z B$NVY Ø单击“表”菜单,选择“替换字段”,在“字段”下拉列表中选择“总分”,在“替换为”文本框后面单击“…”按钮;
pu#[pa
Ø双击“字段”里显示的“数学”然后输入“+”,再单击“物理”然后输入“+”,再单击“化学”单击“确定”;
cN5"i0xk Ø在“替换条件”中选择“ALL”,单击“确定”,此时可看到计算后的结果显示在表格中。
i+I0k~wY 简便方法:打开FoxH.DBF,在命令窗口输入:
c`ftd>] UPDATE 总分 SET 总分=数学+物理+化学
a>w~FUm* 然后再输入LIST浏览一下计算后结果。
94y9W# o<nS_x W/=7jM :mP9^Do2; 3、创建索引(2分):在当前目录下打开IndexH.dbf数据库表文件,建立索引:
zC#%6@P\ 索引名为“RESULT”、升序、类型为“唯一索引”、表达式为“总分”。
2
ZK%)vq0 解析创建索引:
}1Z6e[K? Ø打开 C:\CZKT\FOXKT中IndexH.dbf表,单击“显示”菜单选择“表设计器”,此时弹出“表设计器-IndexH.dbf”对话框;
\+9;!VWhl Ø单击“索引”选项卡,输入:索引名为“RESULT”、升序(默认为升序,单击一下变为降序)、类型为“唯一索引”、表达式为“总分”,单击“确定”此操作完成。
5/,Qz>QE[ 注意:如果打开的“表设计器-IndexH.dbf”对话框为只读文件时,则先将任意建一个数据库,将表添加到数据中,然后设置索引。最后再将表在数据库中“移去”,不是“删除”。
hVkO%]? oBC]UL;8xJ ni<[G0#T KJX>DL 9\ 4、关闭所有打开的数据库,退出FoxPro应用程序。
\f<z*!,D$ 关闭Visual foxpro
i(Vm!Y82 示例二:
7VY8CcL 1、创建数据表(3分):在当前目录(FOXKT文件夹)中创建数据表STRUE.DBF,结构如下:
2qjyFTT Field Name Type Width Dec
6<PW./rk:
A$:|Qd7F1 姓名 Character 10
{m'AY) (2tH"I 是否女性 Logical
[[X+P 0`r '-.wFB; 入学日期 Date
) $J7sa 考试成绩 Numeric 3 0
%4/xH9 解析创建数据表:类似于示例一,注意逻辑型数据,此处略。考生可以对照此题做一个练习。
N8QH*FX/F1 2、录入数据(2分):在当前目录下打开RECE.DBF,往该数据表中追加如下记录:
_@K YF) >4c` UW 编号 姓名 年龄 所属球队
X.eB ;w/} B008 李鸿雁 18 绿队
QXY}STs 解析录入数据:
Fpf><Rn Ø打开目录C:\CZKT\FOXKT中的表RECE.DBF,然后单击“显示”菜单下的“浏览……”(后面写的位置和表名),此时您就可以浏览一下表格的所有记录了;
c 6q/X* Ø在“表”菜单下,选择“追加新记录”选项,此时会看到,在记录的末笔添加了一条空的记录;
_*n)mlLln Ø按照题目给定的内容将数据添加到记录当中,完成后,不需要保存直接退出。(因为已经自动保存了)
V:>`*tlh 3、数据复制(3分):在当前目录下打开CMDE.DBF,将所有所在城市是“石家庄”的记录复制到GENE.DBF中。
+q-c8z 解析数据复制:
LQ>$>A( Ø“文件”菜单选择“新建”,弹出“新建”对话框,选择“查询”单选按钮,再选择“新建文件”;
N|<bVq% Ø此时弹出一个“打开”对话框,此对话框后面显示“查询设计器”,选择C:\CZKT\FOXKT中的表CMDE.DBF,然后“确定”。最后闭关“添加表或视图”对话框;
shzG
Eb Ø在“字段”选项卡中单击“全部添加”,查询的表中将包括该表的所有字段;
p6Gcts?, Ø在“筛选”选项卡中“字段名”下拉列表框中选择“Cmde.所在城市”,
XWXr0>!,? Ø“条件”下拉列表中选择“=”,“实例”文本框中输入“石家庄”(注意必须带引号,必须为英文状态下半角的引号);
x`L+7,&n Ø单击“查询设计器”工具栏中的“查询去向”,选择“表”按钮,在“表名”中输入“GENE.DBF”,单击“确定”,再单击工具栏中“!”。
q5?{1 Ø查询不需要保存,直接关闭,本题要的是查询结果。
NWaO_sm 特别强调:完成本题后,可以到C:\CZKT\FOXKT文件夹中查看一下。如果没有该表,就是保存的位置有误。为了更快、更准确的将该表保存到指定文件夹中,可以首先设置一下“文件位置”下的“默认目录”。
aaT5u14% 4、关闭所有打开的数据库,退出FoxPro应用程序。
u>}zm_ AAo0M/U' 示例三:
7UDq/:}Fo 1、创建数据表(2分):在当前目录(FOXKT文件夹)中创建数据表STRUA.DBF,结构如下:
Km"&mT $ Field Name Type Width Dec
OfJd/D > Y]_K 厂商 Character 30
#Qsk}Gv X Ny
Y$ 负责人 Character 10
@ t|3gF$X BfVBywty 订购日期 Date
dQK`sLChv x{?sn 订购数量 Numeric 8 0
.l=p[BI 注意:该题目与示例一和示例二中第一题相似,考生可以当作练习。在此省略解析。
wHWma)}-z 2、数据计算(2分):在当前目录下打开FoxA.DBF,计算所有记录的“未还费用”列,计算公式为:
2`E!| X 未还费用 = 贷款费用 - 已还费用
gb(#DbI 注意:此题和示例一中的第二部分“数据计算”相似,只是将加法变为减法。操作方法相似,不再做进一步解释。考生可以做练习复习一下该内容。
Ko+al {2 3、创建索引(2分):为FoxA.DBF建立索引:索引名为“DAIKUAN”、升序、类型为“唯一索引”、表达式为“贷款费用”。
3C#RjA-2[ 注意:此师和示例一中的第三部分相似,按要求建立索引。在此不做详细解释,考生可以做练习复习一下本重点。
7*MU2gb 4、创建查询(2分):打开FoxA.DBF建立一个查询,字段选择编号、姓名、已还费用字段,筛选记录条件为已还费用大于等于5000,排序选择按已还费用降序排序。将生成的查询以文件名ta保存在FOXKT文件夹下(注意:扩展名默认)。
3(o7co-f 解析创建查询:
>j:|3atb Ø“文件”菜单选择“新建”,弹出“新建”对话框,选择“查询”单选按钮,再选择“新建文件”;
Z)5klg$c Ø此时弹出一个“打开”对话框,此对话框后面显示“查询设计器”,选择C:\CZKT\FOXKT中的表FoxA.DBF,然后“确定”。最后闭关“添加表或视图”对话框;
-$9
~xX Ø在“字段”选项卡中分别选择“编号、姓名、已还费用”,然后单击“添加”
iJ4<f->t Ø在“筛选”选项卡中“字段名”下拉列表框中选择“Foxa.已还费用”,
*l{4lu “条件”下拉列表中选择“>=”,“实例”文本框中输入5000.
#@E(<Pu4` Ø单击“排序依据”选项卡,选择“已还费用”然后单击“添加”,在“排序选项”中选择“降序”单选按钮;
u uSHCp
Ø“文件”菜单,选择“保存”,文件保存的位置为C:\CZKT\FOXKT文件夹中,文件名为“ta”,此处扩展名默认为“.qpr”。
t2U$m'(A& 5、关闭所有打开的数据库,退出FoxPro应用程序。
ng
9NE8F 存盘退出。