2008职称计算机考试(数据库操作示例详解)
=m<; Jx5 N0Y$QWr_$ !m7`E 示例一:
rL{3O4O 题目要求:说明:下面所提到的“当前目录”是指答题文件夹中的FOXKT文件夹;而且以下文件名、字段名、字段值中的字母和数字都是英文半角字符。
@|e4.(9A N?Wx-pK 在FoxPro环境中进行如下操作:
X<pg^Y0 1、创建数据表(2分):在当前目录(FOXKT文件夹)中创建数据表STRUH.DBF,结构如下:
+Ce[OG. Field Name Type Width Dec
KyQO>g{R to}g4 图书名称 Character 30
1_AB;^ s& INcjC 作者 Character 10
yH\3*#+ rV
yw1D 出版日期 Date
~0;l\^ VR8 kY& 印刷量 Numeric 8 0
K;:_UJ>t 解析创建数据表:
+ESEAi91 Ø启动Visual foxpro,在“文件”菜单下选择“新建”;
RA%=_wPD
+ Ø打开“新建”对话框,然后选择“表”单选按钮,再单击“新建文件”;
UR3qzPm!0e Ø此时打开“创建”窗口,选择文件保存的位置为C:\CZKT\FOXKT,输入表名为:STRUH.DBF然后单击“保存”;
k-:wM`C Ø弹出“表设计器”对话框,此时根据给定的字段名、类型、宽度创建表。注意:Character字符型、Date日期型、Numeric数值型(注意小数及整数位)
OouIV3 Ø输入完毕单击“确定”,此时弹出“此时输入数据记录吗?”提示,由于题目无要求,所以单击“否”,第一题完成。
iMT[sb cO8':P5Q Ofx] :4Gc'bR 2、数据计算(4分):在当前目录下打开FoxH.DBF,计算所有记录的“总分”列,计算公式为:
\?$`dA [ 总分 = 数学 + 物理 + 化学
bvay
7 解析数据计算:
l
x'^vK% F Ø打开目录C:\CZKT\FOXKT中FoxH.DBF表,然后单击“显示”菜单选择:
Fjs:rZ#{ “浏览(B)”Foxh(c:\czkt\foxkt\foxh.dbf)””浏览FoxH.DBF表数据内容;
cuw 7P Ø单击“表”菜单,选择“替换字段”,在“字段”下拉列表中选择“总分”,在“替换为”文本框后面单击“…”按钮;
s6U$]9 ` Ø双击“字段”里显示的“数学”然后输入“+”,再单击“物理”然后输入“+”,再单击“化学”单击“确定”;
B4D#TlB Ø在“替换条件”中选择“ALL”,单击“确定”,此时可看到计算后的结果显示在表格中。
2bs={p$}a 简便方法:打开FoxH.DBF,在命令窗口输入:
7J[DD5
UPDATE 总分 SET 总分=数学+物理+化学
c\Z.V*o 然后再输入LIST浏览一下计算后结果。
B~CdY}UTsj
[%0{7pz} 8gHOs#\ A_y]6~Mu?~ 3、创建索引(2分):在当前目录下打开IndexH.dbf数据库表文件,建立索引:
ir{li?kV 索引名为“RESULT”、升序、类型为“唯一索引”、表达式为“总分”。
@TQzF-%#7 解析创建索引:
o]@Mg5(8Q Ø打开 C:\CZKT\FOXKT中IndexH.dbf表,单击“显示”菜单选择“表设计器”,此时弹出“表设计器-IndexH.dbf”对话框;
f} !Eu Ø单击“索引”选项卡,输入:索引名为“RESULT”、升序(默认为升序,单击一下变为降序)、类型为“唯一索引”、表达式为“总分”,单击“确定”此操作完成。
f@j )t%mh 注意:如果打开的“表设计器-IndexH.dbf”对话框为只读文件时,则先将任意建一个数据库,将表添加到数据中,然后设置索引。最后再将表在数据库中“移去”,不是“删除”。
S"@/F-
81 @^2?97i
c A_4.>g iw
XMe(k 4、关闭所有打开的数据库,退出FoxPro应用程序。
%tE#
%;Z 关闭Visual foxpro
>p`ZcFNs" 示例二:
5r)]o'?s 1、创建数据表(3分):在当前目录(FOXKT文件夹)中创建数据表STRUE.DBF,结构如下:
'!DS3zEeLS Field Name Type Width Dec
"c5bz ^[6S]Ft( 姓名 Character 10
${F4x "x (-[73v-w 是否女性 Logical
u)4eu,MBT mm:g9j 入学日期 Date
tR Cz[M& 考试成绩 Numeric 3 0
}T~}W8H 解析创建数据表:类似于示例一,注意逻辑型数据,此处略。考生可以对照此题做一个练习。
[S_qi, 2、录入数据(2分):在当前目录下打开RECE.DBF,往该数据表中追加如下记录:
IA;'5IF aGml!N5' 编号 姓名 年龄 所属球队
Bnfp
_SM B008 李鸿雁 18 绿队
;{Nc9d 解析录入数据:
K(3_1*e Ø打开目录C:\CZKT\FOXKT中的表RECE.DBF,然后单击“显示”菜单下的“浏览……”(后面写的位置和表名),此时您就可以浏览一下表格的所有记录了;
P#l"`C
/ Ø在“表”菜单下,选择“追加新记录”选项,此时会看到,在记录的末笔添加了一条空的记录;
_+6aD|7x Ø按照题目给定的内容将数据添加到记录当中,完成后,不需要保存直接退出。(因为已经自动保存了)
*A([1l&]i 3、数据复制(3分):在当前目录下打开CMDE.DBF,将所有所在城市是“石家庄”的记录复制到GENE.DBF中。
p9-s' F|@i 解析数据复制:
VK>Cf> Ø“文件”菜单选择“新建”,弹出“新建”对话框,选择“查询”单选按钮,再选择“新建文件”;
@~CXnc0 Ø此时弹出一个“打开”对话框,此对话框后面显示“查询设计器”,选择C:\CZKT\FOXKT中的表CMDE.DBF,然后“确定”。最后闭关“添加表或视图”对话框;
~wFiq)v( Ø在“字段”选项卡中单击“全部添加”,查询的表中将包括该表的所有字段;
}pJLK\ Ø在“筛选”选项卡中“字段名”下拉列表框中选择“Cmde.所在城市”,
]2 Ø“条件”下拉列表中选择“=”,“实例”文本框中输入“石家庄”(注意必须带引号,必须为英文状态下半角的引号);
l2ARM3" Ø单击“查询设计器”工具栏中的“查询去向”,选择“表”按钮,在“表名”中输入“GENE.DBF”,单击“确定”,再单击工具栏中“!”。
' 4.T1i, Ø查询不需要保存,直接关闭,本题要的是查询结果。
b[rVr
J 特别强调:完成本题后,可以到C:\CZKT\FOXKT文件夹中查看一下。如果没有该表,就是保存的位置有误。为了更快、更准确的将该表保存到指定文件夹中,可以首先设置一下“文件位置”下的“默认目录”。
@#2KmM~I 4、关闭所有打开的数据库,退出FoxPro应用程序。
60#eTo?}o >pm`(zLn 示例三:
".7\>8A#a 1、创建数据表(2分):在当前目录(FOXKT文件夹)中创建数据表STRUA.DBF,结构如下:
EdTR]}8 Field Name Type Width Dec
LEC=@) B e|d~&Bk0 厂商 Character 30
dvu8V_U O^~Z-;FA 负责人 Character 10
E*"oA1/I <lgX=wx L 订购日期 Date
yi;pn Z rHp2I6.0a 订购数量 Numeric 8 0
LaX<2]Tx: 注意:该题目与示例一和示例二中第一题相似,考生可以当作练习。在此省略解析。
#Dp]S,e 2、数据计算(2分):在当前目录下打开FoxA.DBF,计算所有记录的“未还费用”列,计算公式为:
X#k:J 未还费用 = 贷款费用 - 已还费用
WRp0. 注意:此题和示例一中的第二部分“数据计算”相似,只是将加法变为减法。操作方法相似,不再做进一步解释。考生可以做练习复习一下该内容。
%+iAL<S 3、创建索引(2分):为FoxA.DBF建立索引:索引名为“DAIKUAN”、升序、类型为“唯一索引”、表达式为“贷款费用”。
2&zklXuo: 注意:此师和示例一中的第三部分相似,按要求建立索引。在此不做详细解释,考生可以做练习复习一下本重点。
K/0Wp % 4、创建查询(2分):打开FoxA.DBF建立一个查询,字段选择编号、姓名、已还费用字段,筛选记录条件为已还费用大于等于5000,排序选择按已还费用降序排序。将生成的查询以文件名ta保存在FOXKT文件夹下(注意:扩展名默认)。
4x-K0 解析创建查询:
^Rb*mI Ø“文件”菜单选择“新建”,弹出“新建”对话框,选择“查询”单选按钮,再选择“新建文件”;
8l*h\p:Q Ø此时弹出一个“打开”对话框,此对话框后面显示“查询设计器”,选择C:\CZKT\FOXKT中的表FoxA.DBF,然后“确定”。最后闭关“添加表或视图”对话框;
J,*+Ak
~ Ø在“字段”选项卡中分别选择“编号、姓名、已还费用”,然后单击“添加”
MNf^ml[ Ø在“筛选”选项卡中“字段名”下拉列表框中选择“Foxa.已还费用”,
x
c|1?AFj “条件”下拉列表中选择“>=”,“实例”文本框中输入5000.
E1s~ + Ø单击“排序依据”选项卡,选择“已还费用”然后单击“添加”,在“排序选项”中选择“降序”单选按钮;
v Q51-.g Ø“文件”菜单,选择“保存”,文件保存的位置为C:\CZKT\FOXKT文件夹中,文件名为“ta”,此处扩展名默认为“.qpr”。
j@R"AP}
5、关闭所有打开的数据库,退出FoxPro应用程序。
L:\>)6]Ls 存盘退出。