計(jì)算機(jī)二級《VFP》試題及答案
一、選擇題
1.在Visual FoxPro中與關(guān)系有關(guān)的是( )。
A.表或視圖
B.表或查詢
C.表單
D.表或報(bào)表
2.項(xiàng)目管理器窗口的“數(shù)據(jù)”選項(xiàng)卡用于顯示和管理( )。
A.數(shù)據(jù)庫、視圖和查詢
B.數(shù)據(jù)庫、自由表和查詢
C.數(shù)據(jù)庫、視圖、自由表和查詢
D.數(shù)據(jù)庫、表單和查詢
3.在Visual FoxPro命令窗口退出Visual FoxPro的命令是( )。
A.QUIT
B.EXIT
C.CLOSE
D.RELEASE
4.在Visual FoxPro中,不能隱藏命令窗口的操作是( )。
A.按Ctrl+F4組合鍵
B.單擊命令窗口右上角的“關(guān)閉”按鈕
C.單擊“窗口”菜單下的“命令窗口”選項(xiàng)
D.單擊常用工具欄上的“命令窗口”按鈕
5.在Visual FoxPro中,CREATE PROJECT命令將創(chuàng)建一個( )。
A.項(xiàng)目
B.數(shù)據(jù)庫
C.程序
D.菜單
6. 在Visual FoxPro中如果字段定義為日期型,則長度固定為( )。
A.8
B.6
C.10
D.4
7.假設(shè)A=〝計(jì)算機(jī)〞,B=〝?shù)燃壙荚嚚?結(jié)果是“計(jì)算機(jī)等級考試”的表達(dá)式是( )。
A.STRING(A,〝是〞,B)
B.A*〝是〞*B
C.A/〝是〞/B
D.A-〝是〞-B
8.在Visual FoxPro中,假設(shè)一個表已經(jīng)打開,執(zhí)行LIST命令后再執(zhí)行DISPLAY命令將顯示該表的哪條記錄( )。
A.無顯示
B.第一條記錄
C.隨機(jī)不確定
D.最后一條記錄
9.在Visual FoxPro中自由表可以建立的索引是( )。
A.候選索引、唯一索引和普通索引
B.主索引、唯一索引和普通索引
C.主索引、候補(bǔ)索引和普通索引
D.主索引、候選索引、唯一索引
10.假設(shè)已打開student表,命令I(lǐng)NDEX ON性別TO student將產(chǎn)生一個名為( )。
A.性別.idx的文件
B.student.cdx的文件
C.student.idx的文件
D.性別.cdx的文件
11.在Visual FoxPro的查詢設(shè)計(jì)器中,查詢?nèi)ハ蚩梢允菢?biāo)簽。標(biāo)簽文件的擴(kuò)展名是( )。
A.lbl
B.lbx
C.lst
D.txt
12.在Visual FoxPro中以下敘述正確的是( )。
A.查詢和視圖都不能定義輸出去向
B.查詢和視圖都可以定義輸出去向
C.視圖可以用USE命令打開
D.視圖可以用MODIFY STRUCTURE命令修改
13.在Visual FoxPro中以下敘述錯誤的是( )。
A.可以用CREATE QUERY命令打開查詢設(shè)計(jì)器建立查詢
B.可以用CREATE VIEW命令打開視圖設(shè)計(jì)器建立視圖
C.如果熟悉SQL SELECT,可以直接編輯.QPR文件建立查詢
D.在視圖設(shè)計(jì)器中可以利用“輸出去向”選項(xiàng)卡指定視圖輸出的目標(biāo)
14.在Visual FoxPro中,與程序文件無關(guān)的擴(kuò)展名是( )。
A.APP
B.EXE
C.DBC
D.FXP
15.在Visual FoxPro中設(shè)計(jì)屏幕界面通常使用( )。
A.表單
B.報(bào)表
C.查詢
D.視圖
16.表單關(guān)閉或釋放時(shí)將引發(fā)事件( )。
A.Load
B.Destroy
C.Hide
D.Release
17.在Visual FoxPro中,有關(guān)菜單文件描述正確的是( )。
A.MNX文件是菜單源文件,MPR文件是生成的程序文件
B.MPR文件是菜單源文件,MNX文件是生成的程序文件
C.只有MPR文件,無MNX文件
D.以上說法均不正確
18.在Visual FoxPro中,打開菜單設(shè)計(jì)器設(shè)計(jì)新菜單的命令是( )。
A.CREATE MENU
B.CREATE POPUP
C.MODIFY MENU
D.MENU<新菜單文件名>
19.輸出報(bào)表(myreport)的命令是( )。
A.REPORT myreport
B.REPORT myreport.frx
C.REPORT FORM myreport
D.DO REPORT myreport
20.在Visual FoxPro中設(shè)計(jì)打印輸出通常使用( )。
A.報(bào)表和標(biāo)簽
B.報(bào)表和表單
C.標(biāo)簽和表單
D.以上選項(xiàng)均不正確
21.下面命令的輸出結(jié)果是( )。
?VARTYPE(TIME())
A.D
B.T
C.N
D.C
22.執(zhí)行下列程序后,變量s的值是( )。
SET TALK OFF
CLEAR
x=〝l2345〞
s=〝〞
1=LEN(x)
DO WHILE l>1
x1=SUBSTR(x,1-1,2)
s=s+x1
1=l-2
ENDD0
?s
A.2345
B.4523
C.54321
D.45231
23.一F列關(guān)于查詢的說法,不正確的是( )。
A.查詢是預(yù)先定義好的SQL SELECT語句
B.查詢是從指定的表或視圖中提取滿足條件的記錄,然后按照希望輸出的類型輸出查詢結(jié)果
C.在用命令使用查詢時(shí),必須首先打開數(shù)據(jù)庫
D.查詢設(shè)計(jì)器中沒有“更新條件”選項(xiàng)卡
24.在SQL語句中,有可能將多個查詢結(jié)果合并成一個查詢結(jié)果的運(yùn)算符是( )。
A.JOIN
B.ALL
C.UNl0N
D.INTO
25.在當(dāng)前數(shù)據(jù)庫中根據(jù)“學(xué)生”表建立視圖viewone,正確的SQL語句是( )。
A.DEFINE VIEW viewone AS SELECT*FROM學(xué)生
B.DEFINE VIEW viewone SELECT*FRoM學(xué)生
C.CREATE VIEW viewone AS SELECT*FROM學(xué)生
D.CREATE VIEW viewone SELECT*FRoM學(xué)生
26.執(zhí)行下列程序后,變量y的值是( )。
SET TALK OFF
CLEAR
X=2000
Do CASE
CASE x<=1000
y=x*0.1
CASE x>1000
y=x*0.2
CASE x>1500
y=x*0.3
CASE x>2500
y—x*0.4
ENDCASE
?Y
A.200
B.400
C.600
D.800
27.在數(shù)據(jù)庫設(shè)計(jì)過程中,如果表A和表B之間是一對多聯(lián)系。下列進(jìn)行的數(shù)據(jù)庫設(shè)計(jì)方法中,最合理的是( )。
A.將表A的主關(guān)鍵字字段添加到表B中
B.將表B的主關(guān)鍵字字段添加到表A中
C.創(chuàng)建一個新表,該表包含表A和表B的主關(guān)鍵字
D.將表A和表B合并,這樣可以減少表的個數(shù),便于管理和維護(hù)
28.在Visual FoxPro中,如果在表之間的聯(lián)系中設(shè)置了參照完整性規(guī)則,并在更新規(guī)則中選擇了“級聯(lián)”,當(dāng)更新父表中記錄的被參照字段時(shí),系統(tǒng)的反應(yīng)是( )。
A.不做參照完整性檢查
B.若子表中有相關(guān)參照記錄,則同時(shí)自動更新子表中記錄的參照字段
C.若子表中有相關(guān)參照記錄,則禁止更新父表中的記錄
D.不做參照完整性檢查,可以隨意更新父表中的連接字段值
29.在Visual FoxPro中,命令“INDEX ON姓名TO xm”的功能是( )。
A.建立一個名為xm.idx的索引文件
B.建立一個名為xm.cdx的索引文件
C.在結(jié)構(gòu)索引文件中建立一個名為xm的索引
D.在非結(jié)構(gòu)索引文件中建立一個名為xm的索引
30.如果病人和病人家屬2個表建立了“級聯(lián)”參照完整性的刪除規(guī)定,下列選項(xiàng)正確的是( )。
A.刪除病人表中的記錄時(shí),病人家屬表中的相應(yīng)記錄系統(tǒng)自動刪除
B.刪除病人表中的記錄時(shí),病人家屬表中的相應(yīng)記錄不變
C.無論病人家屬表中是否有相關(guān)的記錄,病人表中的記錄都不允許刪除
D.病人家屬表中的記錄不允許刪除.
31.假設(shè)會員表中包含會員號、姓名和電話字段,F(xiàn)在希望通過創(chuàng)建合適的索引來保證會員號的值唯一,下面選項(xiàng)中能夠保證會員號的值是唯一的語句是( )。
A.INDEX ON會員號TO hyh CANDIDATE
B.INDEX ON會員號TO hyh UNIQUE
C.INDEX ON會員號TAG hyh CANDIDATE
D.INDEX ON會員號TAG hyh UNIQUE
32.設(shè)教師表保存的是教師信息,教師表的表結(jié)構(gòu)為(教師編號,姓名,職稱)i圖書出版表保存的是教師出版圖書的情況,圖書出版表的表結(jié)構(gòu)為(ISBN號,教師編號,圖書名,出版社,出版年份)。如果希望查詢從來沒有出版過圖書的教師編號和姓名,正確的SQL語句是( )。
A.SELECT教師表.教師編號,姓名FROM教師表JOIN圖書出版表; 0N教師表.教師編號一圖書出版表.教師編號WHERE教師表.教師編號IS NULL
B.SELECT教師表.教師編號,姓名FROM教師表LEFT JOIN圖書出版表; ON教師表.教師編號一圖書出版表.教師編號WHERE圖書出版表.教師編號IS NULL
C.SELECT教師表.教師編號,姓名FROM教師表INNER JOIN圖書出版表; ON教師表.教師編號一圖書出版表.教師編號WHERE圖書出版表.教師編號IS NULL
D.SELECT教師表.教師編號,姓名FROM教師表RIGHT JOIN圖書出版表; ON教師表.教師編號一圖書出版表.教師編號WHERE圖書出版表.教師編號IS NULL
33.使用SQL的UPDATE語句更新數(shù)據(jù)表中的數(shù)據(jù)時(shí),以下說法正確的是( )。
A.如果沒有數(shù)據(jù)項(xiàng)被更新,將提示錯誤信息
B.更新數(shù)據(jù)時(shí),必須帶有WHERE子句
C.不能更新主關(guān)鍵字段的值
D.一次可以更新多行數(shù)據(jù)或多個字段的值
34.“SELECT*FROM投稿表TO FILE temp WHERE審稿結(jié)果=ˋ通過ˊ”語句的功能是( )。
A.將查詢結(jié)果保存到臨時(shí)temp.dbf文件中
B.將查詢結(jié)果保存到temp.txt文本文件中
C.將查詢結(jié)果保存到temp表中
D.將查詢結(jié)果保存到數(shù)組temp中
35.設(shè)R和S是兩個基本表,“R RIGHT JOIN S ON R.某列=s.某列”表示( )。
A.在連接結(jié)果中會將R中不滿足連接條件的數(shù)據(jù)保留下來
B.在連接結(jié)果中會將S中不滿足連接條件的數(shù)據(jù)保留下來
C.在連接結(jié)果中會將R和S中都不滿足連接條件的數(shù)據(jù)保留下來
D.在連接結(jié)果中,R和S的數(shù)據(jù)都必須滿足連接條件
36.有如下職員表:
職員(職員9(C,3),姓名(C,6),t哇N(C,2),職務(wù)(C,10))要在該表中插入一條記錄,正確的SQL語句是( )。
A.INSERT T0職員VALUES(〝666〞,〝楊軍〞,〝男〞,〝組員〞)
B.INSERT INTO職員VALUES(〝666〞,〝楊軍〞,.T.,〝組員〞)
C.APPEND T0職員VALUES(〝666〞,〝楊軍〞,.T.,〝組員〞)
D.INSERT INTO職員VALUES(〝666〞,〝楊軍〞,〝男〞,〝組員〞)
37.有如下訂單表:
訂單(訂單號(C,4),客戶號(C,4),職員號(C,3),簽訂日期(D.,金額(N,6,2))統(tǒng)計(jì)2012年各月份簽訂的訂單的總金額,正確的SQL語句是( )。
A.SELECT MONTH(簽訂日期)月份,SUM(金額)總金額FROM訂單GROUP BY月份WHHRE
YEAR(簽訂日期)=2012
B.SELECT MONTH(簽訂日期)月份,SUM(金額)總金額FROM訂單GROUP BY月份HAVING
YEAR(簽訂日期)=2012
C.SELECT簽訂日期.MONTH( )月份,SUM(金額)總金額FROM訂單GROUP:BY月份WHERE
簽訂日期.YEAR( )=2012
D.SELECT簽訂日期.MONTH( )月份,SUM(金額)總金額FROM訂單GROUP BY月份HAⅥNG
簽訂日期.YEAR( )=2012
38.有如下職員表和訂單表:職員(職員號(C,3),姓名(C,6),性別(C,2),職務(wù)(C,10))訂單(訂單號(C,4),客戶號(C,4),職員號(C,3),簽訂日期(D),金額(N,6,2))查詢職工〝李麗〞簽訂的訂單消息,正確的SQL.語句是( )。
A.SELECT訂單號,客戶號,簽訂日期,金額FROM訂單WHERE姓名=〝李麗〞
B.SELECT訂單號,客戶號,簽訂日期,金額FROM職員,訂單WHERE姓名=〝李麗〞;
AND職員.職員號一訂單.職員號
C.SELECT訂單號,客戶號,簽訂日期,金額FROM職員JOIN訂單;
WHERE職員.職員號=訂單.職員號AND姓名=〝李麗〞
D.SELECT訂單號,客戶號,簽訂日期,金額FROM職員,訂單ON職員.職員號=訂單.職員號AND姓名=〝李麗〞
39.為職工.dbf數(shù)據(jù)庫表增加一個字段“聯(lián)系方式”的SQL語句是( )。
A.ALTER TABLE職工ADD聯(lián)系方式C(40)
B.ALTER職工ADD聯(lián)系方式C(40)
C.CHANGE TABLE職工ADD聯(lián)系方式C(40)
D.CHANGE DBF職工INSERT聯(lián)系方式(40)
40.使用SQL,語句完成“將所有職工的年齡增加1歲”,正確的操作是( )。
A.UPDATE職工SET年齡=年齡+1
B.UPDATE職工ADD年齡+1
C.UPDATE職工SET年齡=1
D.UPDATE職工ADD l
二、基本操作題(共18分)
(1)在考生文件夾下建立數(shù)據(jù)庫BOOKAUTH.DBC,把表BOOKS和AUTHORS添加到該數(shù)據(jù)庫中。
(2)為AUTHORS表建立主索引,索引名為“PK”,索引表達(dá)式為“作者編號”。
(3)為B00XS表建立兩個普通索引,第一個索引名為“PK”,索引表達(dá)式為“圖書編號”;第二個索引名和索引表達(dá)式均為“作者編號”。
(4)建立AUTHORS表和800KS表之間的永久聯(lián)系。
三、簡單應(yīng)用題(共24分)
在考生文件夾下完成如下簡單應(yīng)用:
(1)打開表單MYFORM4-4,把表單(名稱為Form1)標(biāo)題改為“歡迎您”,將文本“歡迎您訪問系統(tǒng)”(名稱為Label1的標(biāo)簽)改為25號黑體。最后在表單上添加“關(guān)閉”(名稱為Command1)命令按鈕,單擊此按鈕關(guān)閉表單。
保存并運(yùn)行表單。
(2)設(shè)計(jì)一個表單MYFORM4,表單中有兩個命令按鈕“查詢”和“退出”(名稱為Commandl和Command2) 。
、賳螕簟安樵儭泵畎粹o,查詢BOOKAUTH數(shù)據(jù)庫中出版過3本以上(含3本)圖書的作者信息,查詢信息包括作者姓名和所在城市;查詢結(jié)果按作者姓名升序保存在表NEW_VIEW4中。
、趩螕簟巴顺觥泵畎磁りP(guān)閉表單。
注意:完成表單設(shè)計(jì)后要運(yùn)行表單的所有功能。
四、綜合應(yīng)用題(共l8分)
(1)在考生文件夾下,將BOOKS表中所有書名中含有“計(jì)算機(jī)”3個字的圖書復(fù)制到BOOKS_BAK表中,以下操作均在BOOKS_BAK表中完成。
(2)復(fù)制后的圖書價(jià)格在原價(jià)格的基礎(chǔ)上降低5%。
(3)從圖書均價(jià)高于25元(含25)的出版社中,查詢并顯示圖書均價(jià)最低的出版社名稱及均價(jià),查詢結(jié)果保存在new_table4表中(字段名為出版單位和均價(jià))。
參考答案與解析
一、選擇題
(1)A
[解析]一個關(guān)系的邏輯結(jié)構(gòu)就是一張二維表;視圖是根據(jù)表定義的,通過視圖可以查詢表,也可以更新表;查詢是預(yù)先定義好的一個SOL SELECT語句,在不同的場合可以直接或反復(fù)使用,從而提高效率;表單是Visual FoxPro中應(yīng)用程序與計(jì)算機(jī)用戶進(jìn)行交流的窗口;報(bào)表可以輸til數(shù)據(jù)庫中檢索、查詢出的信息,以便進(jìn)行分析和保存。故A選項(xiàng)正確。
(2)C
[解析]“項(xiàng)目管理器”窗口是Visual FoxPro開發(fā)人員的工作平臺,它包括6個選項(xiàng)卡:全部、數(shù)據(jù)、文檔、類|代碼、其他。其中,“數(shù)據(jù)”選項(xiàng)卡包含了一個項(xiàng)目中的所有數(shù)據(jù)--數(shù)據(jù)庫、自由表、查詢和視圖。故C選項(xiàng)正確。
(3)A
[解析]有四種方法退出Visual FoxPro返回windows:
、儆檬髽(biāo)左鍵單擊Visual FoxPro標(biāo)題欄最右側(cè)的關(guān)閉窗口按鈕;
②從“文件”下拉菜單中選擇“退出”選項(xiàng);
、蹎螕糁鞔翱谧笊戏降暮倛D標(biāo),從窗口下拉菜單中選擇“關(guān)閉”,或按Alt+F4鍵;
、茉诿畲翱谥墟I人QUIT命令,然后回車。故A選項(xiàng)正確。
(4)C
[解析]隱藏命令窗口的方法有三種:①按Ctrl+F4組合鍵;②單擊命令窗口右上角的“關(guān)閉”按鈕;③單擊常用工具欄上的“命令窗口”按鈕。故C選項(xiàng)正確。
(5)A
[解析]執(zhí)行CREATE PROJECT命令即可創(chuàng)建項(xiàng)目;執(zhí)行CREATE DATABASE命令可建立數(shù)據(jù)庫;執(zhí)行MOD IFY COMMAND命令可建立程序文件;執(zhí)行CREATE MENU命令可建立菜單。故A選項(xiàng)正確。
(6)A
[解析]Visual FoxPm中有些數(shù)據(jù)類型寬度是固定的,如數(shù)值型、貨幣型、日期型、日期時(shí)間型均為8個字節(jié),邏輯型為l個字節(jié),備注型和通用型為4等。故A選項(xiàng)正確。
(7)A
[解析]字符表達(dá)式由字符串運(yùn)算符將字符型數(shù)據(jù)連接起來形成,其運(yùn)算結(jié)果仍然是字符型數(shù)據(jù)。字符串運(yùn)算符有兩個,它們的優(yōu)先級相同:
+:前后兩個字符串首尾連接形成一個新的字符串。
-:連接前后兩個字符串,并將前字符串的尾部空格移到合并后的新字符串尾部。故D選項(xiàng)正確。
(8)A
[解析]打開一個表,指針默認(rèn)指向第一條記錄,執(zhí)行LIST命令顯示所有記錄,這時(shí)指針指向文件結(jié)束標(biāo)識即最后一條記錄后面,再執(zhí)行DISPLAY命令顯示當(dāng)前記錄,由于指針指向文件結(jié)束標(biāo)識,所以無具體記錄顯示。故A選項(xiàng)正確。
(9)A
[解析]Visual FoxPro中的索引分為主索引、候選索引、唯一索引和普通索引四種。其中,除了主索引之外,其他三種索引均可以用于自由表。故A選項(xiàng)正確。
(10)A
[解析]索引包括單索引.idx和復(fù)合索引.cdx,其中建立單索引的命令是index on字段t0索引名;建立復(fù)合索引的命令是index on字段名ta9索引名。本題中INDEXON性別TO student將產(chǎn)生一個名為student.idx的單索引文件。故C選項(xiàng)正確。
(11)B
[解析].1bx是標(biāo)簽文件的擴(kuò)展名,.1st是向?qū)Я斜淼奈臋n的擴(kuò)展名,.txt是文本文件的擴(kuò)展名。Visual FoxPro中沒有以.1b1為擴(kuò)展名的文件。故B選項(xiàng)正確。
(12)C
[解析]在查詢設(shè)計(jì)器中,可以設(shè)置查詢?nèi)ハ,而在視圖設(shè)計(jì)器中沒有“查詢?nèi)ハ颉钡膯栴}。視圖的使用類似于表,可以使用USE命令打開或關(guān)閉視圖。MODIFY STRUCTURE是修改表結(jié)構(gòu)的命令。故C選項(xiàng)正確。
(13)D
[解析]在視圖設(shè)計(jì)器中沒有“查詢?nèi)ハ颉钡膯栴},即沒有“輸出去向”選項(xiàng)卡。故D選項(xiàng)正確。
(14)C
[解析]Visual FoxPro程序文件通過編譯、連編,可以產(chǎn)生不同的目標(biāo)代碼文件。這些文件具有不同的擴(kuò)展名。.APP是Visual FoxPro應(yīng)用程序文件,.EXE是Visual FoxPro可執(zhí)行版本,.FXP是Visual FoxPro編譯版本..DBC是數(shù)據(jù)庫的擴(kuò)展名,與程序文件無關(guān)。故C選項(xiàng)正確.
(15)A
[解析]在Visual FoxPro中設(shè)計(jì)屏幕界面通常使用表單,打印輸出通常使用報(bào)表。故A選項(xiàng)正確.
(16)B
[解析]Load事件在表單對象建立之前產(chǎn)生。即運(yùn)行表單時(shí),第一個引發(fā)的事件;Destory事件在對象釋放時(shí)引發(fā);Hide方法會隱藏表單,即將表單的Visible屬性值設(shè)置為.T.,使之成為活動表單;Release方法將表單從內(nèi)存中釋放(清除)。故B選項(xiàng)正確。
(17)A
[解析]菜單源文件的擴(kuò)展名是.MNX.生成的程序程序的擴(kuò)展名是.MPR,編譯后的菜單程序的擴(kuò)晨名是.MPX。故A選項(xiàng)正確。
(18)C
[解析]在Visual FoxPro中,可以使用命令調(diào)用菜單設(shè)計(jì)器,打開“菜單設(shè)計(jì)器”窗口,進(jìn)行菜單的建立或者修改.命令格式為MODIFY MENU<文件名>,其中<文件名>指菜單定義文件,默認(rèn)擴(kuò)展名為.mnx,允許缺省。若<文件名>為新文件,則為建立菜單,否則為打開菜單。故C選項(xiàng)正確.
(19)C
[解析]預(yù)覽和輸出指定報(bào)表的命令格式為REPORT FORM<報(bào)表文件名>[PREVIEW]。如果使用了[PREVIEW]子句,首先彈出“預(yù)覽”對話框;如果不使用該子句,系統(tǒng)會將報(bào)表內(nèi)容顯示在Visual FoxPro主窗口中.故C選項(xiàng)正確。
(20)A
[解析]報(bào)表和標(biāo)簽可以打印輸出信息;菜單是應(yīng)用程序與計(jì)算機(jī)用戶進(jìn)行交流的窗口。故A選項(xiàng)正確。
(21)D
[解析]TIME()是系統(tǒng)時(shí)間函數(shù),以24小時(shí)制、hh:mm:ss格式返回當(dāng)前系統(tǒng)時(shí)間,函數(shù)值為字符型。VARTYPE(<表達(dá)式>[,<邏輯表達(dá)式>])是數(shù)據(jù)類型測試函數(shù),用于測試<表達(dá)式>的類型,返回一個大寫字母。由于TIME()的返回值是字符型,因此運(yùn)行VARTYPE命令時(shí)返回C。故本題D為正確選項(xiàng)。
(22)B
[解析]本題涉及的考點(diǎn)有求字符串長度函數(shù)、取子串函數(shù)以及DO wHILE-ENDD0循環(huán)語句。其中LEN(<字符表達(dá)式>)返回指定字符表達(dá)式的長度,即所包含的字符個數(shù),函數(shù)值為數(shù)值型。SUBSTR()從給定字符串的指定起始位置取指定長度的子串作為函數(shù)值。運(yùn)行DO WHILE-ENDD0語句時(shí),先判斷<條件>是否為真,如果是真則運(yùn)行DOWHILE與ENDD0間的循環(huán)體,當(dāng)運(yùn)行到ENDD0時(shí),再返回DO WHILE’重新判斷循環(huán)條件是否為真,確定是否再次運(yùn)行循環(huán)體。若條件為假則結(jié)束循環(huán)語句運(yùn)行ENDD0后的語句。程序執(zhí)行過程如下:程序開始時(shí)l=len(x)=5,進(jìn)入循環(huán)條件判斷,5>1,條件成立,執(zhí)行第一次循環(huán),xl-SUB-STR(x,I一1,2)=〝45〞,s=S+x1=”45“,i=5-2=3。第一次循環(huán)結(jié)束。程序回到循環(huán)條件判斷,3>1,條件成立,執(zhí)行第二次循環(huán),xl=SUBSTR(X,j-1,2)=”23”,s=s+x1=”4523”,i=3-2=1。第二次循環(huán)結(jié)束,程序回到循環(huán)條件判斷,i>1,條件不成立,結(jié)束循環(huán)。最終s中的值為字符串”4523”。故答案選B。
(23)C
[解析]查詢是預(yù)先定義好的一個SQL SE-LECT語句,可根據(jù)需要直接使用。查詢是從指定的表或視圖中提取滿足條件的記錄,然后按照想得到的輸出類型定向輸出查詢結(jié)果,諸如瀏覽器、報(bào)表、表、標(biāo)簽等。在用命令使用查詢時(shí),必須要加擴(kuò)展名.qpr,不必打開數(shù)據(jù)庫;視圖設(shè)計(jì)器有“更新條件”選項(xiàng)卡,而查詢設(shè)計(jì)器中沒有“更新條件”選項(xiàng)卡。故本題C為正確選項(xiàng)。
(24)C
[解析]SQL支持集合的并(UNION)運(yùn)算,可以將具有相同查詢字段個數(shù)且對應(yīng)字段值域相同的SQL查詢語句用UNION短語連接起來,合并成一個查詢結(jié)果輸出。故本題C為正確選項(xiàng)。
(25)C
[解析]建立視圖可以使用CREATE VIEw語句來實(shí)現(xiàn),其基本的命令格式是:CREATE VIEW視圖名ASSELECT查詢語句,可見本題C為正確選項(xiàng)。
(26)B
[解析]本題考查分支語句DO CASE-END-CASE,多分支語句需依次判斷CASE后的條件是否成立。當(dāng)發(fā)現(xiàn)某個CASE后的條件成立時(shí),就運(yùn)行該CASE和下一個CASE間的命令序列,然后運(yùn)行ENDCASE后面的命令。如所有的條件都不成立,則運(yùn)行OTHERWISE與ENDCASE之間的命令序列,然后轉(zhuǎn)向ENDCASE后面的語句。因此本題運(yùn)行Y=x*0.2=400,即B選項(xiàng)正確。
(27)A
[解析]同一個數(shù)據(jù)庫中的表通常都是有關(guān)系的,當(dāng)插入、刪除或修改一個表中的數(shù)據(jù)時(shí),通過參照引用相互關(guān)聯(lián)的另一個表中的數(shù)據(jù),來檢查對表的數(shù)據(jù)操作是否正確。在父表中建立主索引或候選索引,在子表對應(yīng)字段上建立普通索引,然后將主索引拖至普通索引上,建立起表之間的聯(lián)系。故A為正確選項(xiàng)。
(28)B
[解析]參照完整性約束包括更新規(guī)則、刪除規(guī)則和插入規(guī)則。更新規(guī)則中設(shè)置級聯(lián)的含義是,當(dāng)更新父表中的連接字段(主關(guān)鍵字)值時(shí),自動修改子表中的所有相關(guān)記錄。因此本題B為正確選項(xiàng)。
(29)A
[解析]INDEX ON命令用于在程序中建立索引,執(zhí)行命令“INDEX ON姓名TO xm”之后可建立一個名為xm的索引文件,索引文件的擴(kuò)展名為.idx,故本題A選項(xiàng)正確。
(30)A
[解析]參照完整性約束包括更新規(guī)勇、刪除規(guī)則和插入規(guī)則,在刪除規(guī)則建立。級聯(lián)”的含義是,當(dāng)刪除父表中的連接字段(主關(guān)鍵字)值時(shí),自動刪除子表中的所有相關(guān)記錄。因此如果刪除病人表中的記錄,病人家屬表中的記錄也會自動刪除,故本題A選項(xiàng)正確。
(31)D
[解析]程序中建立索引,其命令格式為;IN-DEX ON<索引表達(dá)式>TO<索引文件名>| TAG<標(biāo)記名>Eov<索引文件名>][FOR<條件表達(dá)式>][AS-CENDING | DESCENDING][UNIQUE|CANDIDATE][ADDITIVE]。其中,各參數(shù)或短語的含義如下:
<索引表達(dá)式>可以是字段名,或包含字段名的表達(dá)式;TO<索引文件名>建立一個單獨(dú)的索引文件,F(xiàn)在只是在建立一些臨時(shí)聯(lián)系時(shí)才使用;
·TAG<標(biāo)記名>建立結(jié)構(gòu)復(fù)合索引文件,索引名與表名同名,<標(biāo)記名>給出索引名;
·OF<索引文件名>建立非結(jié)構(gòu)復(fù)合索引文件,用<索引文件名>指定索弓I文件名;
·FOR<滌件表達(dá)式>給出索引過濾條件,該短語一般不使用;
·ASCENDING或DESCENDING指明建立升序或降序索引,默認(rèn)是升序的;
·UNIQUE指明建立唯一索引;
·CANDIDATE指明建立候選索引;
·ADDITIVE說明現(xiàn)在建立索引時(shí)是否關(guān)閉以前的索引,默認(rèn)是關(guān)閉。根據(jù)標(biāo)準(zhǔn)格式首先排除A、B選項(xiàng),因?yàn)閁NIQUE建立唯一索引,因此本題D選項(xiàng)正確。
(32)B
[解析]本題考查超連接查詢,在一般的SQL中,超連接運(yùn)算符是“*=”(左連接)和“=*”(右連接)。超連接查詢有四種連接方式,其基本格式為SELECT……FROM左表INNER | LEFT | RIGHT | FULL JOIN右表ON連接條件WHERE其它條件。其中:
·INNER JOIN等價(jià)于JOIN,為普通連接(也稱為內(nèi)部連接),普通連接只有滿足連接條件的記錄才出現(xiàn)在查詢結(jié)果中;
·LEFT JOIN為左連接,左連接除滿足連接條件的記錄出現(xiàn)在查詢結(jié)果中外,第一個表中不滿足連接條件的記錄也出現(xiàn)在查詢結(jié)果中,不滿足連接條件的記錄的對應(yīng)部分為.NUL L.:
·RIGHT JOIN為右連接,除滿足連接條件的記錄出現(xiàn)在查詢結(jié)果中外,第二個表中不滿足連接條件的記錄也出現(xiàn)在查詢結(jié)果中,不滿足連接條件的記錄的對應(yīng)部分為.NULL.;
·FULL JOIN稱為全連接除滿足連接條件的記錄出現(xiàn)在查詢結(jié)果中外,兩個表中不滿足連接條件的記錄也出現(xiàn)在查詢結(jié)果中,即兩個表中的內(nèi)容都會顯示在結(jié)果中,不滿足連接條件的記錄的對應(yīng)部分為.NULL.。查詢從來沒有出版過圖書的教師編號和姓名,B為正確選項(xiàng)。
(33)D
[解析]更新數(shù)據(jù)的命令格式為:UPDATE表名SET字段名1=表達(dá)式1[,字段名2=表達(dá)式2……][WHERE條件],一般使用WHERE子句指定更新的條件,并且一次可以更新多行數(shù)據(jù)或多個字段;如果不使用WHERE子句,則更新全部記錄,故本題D為正確選項(xiàng)。
(34)B
[解析]本題考查簡單查詢,在SQL查詢語句的尾部添加TO FILE<文本文件名>[ADDITIVE]可以將查詢的結(jié)果放入新生成的指定文本文件中,因此該語句的功能是將查詢結(jié)果保存到temp.txt文本文件中。故本題B為正確選項(xiàng)。
(35)B
[解析]本題考查超連接查詢,超連接查詢有四種連接方式,本題RIGHT JOIN為右連接,表示除滿足連接條件的記錄出現(xiàn)在查詢結(jié)果中外,第二個表中不滿足連接條件的記錄也出現(xiàn)在查詢結(jié)果中,不滿足連接條件的記錄的對應(yīng)部分為.NULL.。因此“R RIGHT JOIN S ON R.某列=S.某列”的意思即是在連接結(jié)果中會將S中不滿足連接條件的數(shù)據(jù)保留下來。故本題B為正確選項(xiàng)。
(36)D
[解析]INSERT INTO<表名>[(字段名1[,字段名2,……])]VALUES(字段值1[,字段值2,……])命令用于插入數(shù)據(jù),首先排除A、C選項(xiàng)。根據(jù)題意插入記錄,在性別字段只能為男或女,因此本題D選項(xiàng)正確。
(37)B
[解析]本題考查分組與計(jì)算查詢,SELECT說明要查詢的字段,F(xiàn)ROM說明要查詢的字段來自哪個表或哪些表,WHERE說明查詢條件,GROUP BY…HAVING用于按照簽訂日期進(jìn)行分組。限定時(shí)間的語句應(yīng)該為。YEAR(簽訂日期)-2012”,首先排除C、D選項(xiàng)。由于給GRoUPBY子句加條件必須使用HAVING,而不可以使用WHERE.因此可見本題B選項(xiàng)正確。
(38)C
[解析]SQL的基本格式為SELECT-FROM-WHERE,其中SELECT說明要查詢的字段,F(xiàn)ROM說明要查詢的字段來自哪個表或哪些表,WHERE說明查詢條件.本題查詢“李麗”簽訂的訂單信息,要查詢字段包括訂單號、客戶號、簽訂日期和金額,WHERE后應(yīng)該限定職員和訂單表中的姓名為“李麗”,由于訂單表中并沒有姓名這一字段,因此用職員號字段將兩表信息相連,AND表示“且”。故本題C為正確選項(xiàng)。
(39)A
[解析]ALTER TABLE<表名>命令用于修改表的結(jié)構(gòu)和字段名,Add用于添加字段,B、C、D選項(xiàng)的鬈式均不正確。故本題A為正確選項(xiàng)。
(40)A
[解析]更新數(shù)據(jù)的命令格式為UPDATE表名SET字段名1=表達(dá)式1[,字段名2=表達(dá)式2…][WHERE條件],將所有職工的年齡增加1歲,應(yīng)使用表達(dá)式“年齡=年齡+1”,故本題A為正確選項(xiàng)。
二、基本操作題
[操作步驟]
(1)步驟1:單擊工具欄中的“新建”按鈕,在“新建”對話框中選擇“文件類型”中的“數(shù)據(jù)庫”,單擊“新建文件”。在 “創(chuàng)建”對話框中輸人數(shù)據(jù)庫名Bookauth,再單擊“保存”按鈕。
步驟2: 在數(shù)據(jù)庫設(shè)計(jì)器上空白處右擊,在彈出的快捷菜單中選擇“添加表”命令,然后在“打開”對話框中選擇考試文件夾下的authors和books表,然后雙擊打開。
(2)在數(shù)據(jù)庫設(shè)計(jì)器中右擊表authors,在彈出的快捷菜單中選擇“修改”命令;在表設(shè)計(jì)器中,選擇“索引”選項(xiàng)卡,在“索引名”中輸入pk,在“類型”中選擇“主索引”,在“表達(dá)式”中輸入“作者編號”,單擊“確定”按鈕。
(3)在數(shù)據(jù)庫設(shè)計(jì)器中右擊表books,在彈出的快捷菜單中選擇“修改”命令;在表設(shè)計(jì)器中,選擇“索引”選項(xiàng)卡,在“索引名”中分別輸入pk和“作者編號”,在“類型”中選擇“普通索引”,在“表達(dá)式”中分別輸入“圖書編號”和“作者編號”,單擊“確定”按鈕。
(4)在數(shù)據(jù)庫設(shè)計(jì)器中,在表authors中選中主索引pk,按住鼠標(biāo)拖動至表books的普通索引“作者編號”上,然后釋放鼠標(biāo)。
三、簡單應(yīng)用題
(1)[操作步驟].
步驟1:單擊工具欄中的“打開”按鈕,在“打開”對話框中選擇考生文件夾下的myformaj.8CX表單,單擊“確定”按鈕。
步驟2: 在“屬性”對話框中,設(shè)置表單的Caption屬性為“歡迎您”。
步驟3:選中標(biāo)簽控件,在“屬性”對話框中設(shè)置其FontSize屬性為25,F(xiàn)ont_Name屬性為“黑體”。
步驟4:在表單上添加一命令按鈕,設(shè)置其Caption屬性為“關(guān)閉”,雙擊該按鈕,輸入thisform.release,再單擊工具欄中的“保存”按鈕。
(2)[操作步驟]
步驟1:單擊工具欄中的“新建”按鈕,在“新建”對話框的“文件類型”選項(xiàng)組中選擇“表單”,單擊“新建文件”按鈕。
步驟2: 系統(tǒng)打開表單設(shè)計(jì)器,單擊“表單控件”工具欄中的命令按鈕,在表單設(shè)計(jì)器中拖動鼠標(biāo)添加一個命令按鈕對象commandl,設(shè)置其Caption屬性為“查詢”,雙擊commandl,在打開的代碼編輯器窗口中輸入以下代碼:
SELECT作者姓名,所在城市;
FROM AUTHORS;
WHERE作者編號IN;
(SELECT作者編號FROM BOOKS GROUP BY作者編號
HAVING COUNT(})>=3);
ORDER BY作者姓名;
INTO TABLE NEW_VIEW4
用同樣的方法,在表單上添加命令按鈕command2,設(shè)置其Caption屬性為“退出”,并雙擊輸入Chck的事件代碼為:THIS-FORM.RELEASE
步驟3:單擊工具欄中的“保存”按鈕,在另存為對話框中將表單保存為myform4,再單擊“保存”按鈕。
步驟4:單擊工具欄中的“運(yùn)行”按鈕,運(yùn)行表單,再分別單擊表單中的“查詢”和“退出”按鈕。
四、綜合應(yīng)用題
[操作步驟]
步驟1:在命令窗口中輸入下列代碼,用于將BOOKS表中滿足條件的記錄復(fù)制到BOOKS-BAK表中,并按回車鍵以執(zhí)行該代碼!
*********************************************
SELECT*FROM BOOKS WHERE書名LIKE。%計(jì)算機(jī)%”INTO TABLE BOOKS_BAK
*********************************************
步驟2: 在命令窗口中輸入下列代碼,用于更新BOOKS_BAK表中的價(jià)格字段,并按回車鍵以執(zhí)行該代碼。
*********************************************
UPDATE BOOKS_AK SET價(jià)格=價(jià)格*(1-0.05)
*********************************************
步驟3:在命令窗口中輸入下列代碼,并按回車鍵以執(zhí)行
該代碼。
*********************************************
SELECT TOP 1 Books_bak.出版單位,avg(books_bak.價(jià)
格)as均價(jià);
FROM books_bak;
GROUP BY Books_bak.出版單位;
HAVING均價(jià)>=25;
ORDER BY 2;
INTO TABLE newjable4.dbf
*********************************************
【計(jì)算機(jī)二級《VFP》試題及答案】相關(guān)文章:
2016計(jì)算機(jī)二級《VFP》鞏固練習(xí)及答案03-27
2016年全國計(jì)算機(jī)二級《VFP》機(jī)考試題及答案03-09
2016年9月計(jì)算機(jī)二級《VFP》測試題及答案03-10
計(jì)算機(jī)二級《VFP》考前練習(xí)題及答案06-08
計(jì)算機(jī)二級《VFP》上機(jī)考題與答案201603-10
2017計(jì)算機(jī)二級《VFP》測試卷與答案03-28