糯米文學吧

位置:首頁 > 計算機 > 計算機二級

2016計算機二級《VF》衝關練習及答案

計算機等級考試越來越受到同學們的重視,下面是小編為大家整理的2016計算機二級《VF》衝關練習及答案,歡迎學習!

2016計算機二級《VF》衝關練習及答案

  單選題

1.下面命令的輸出結果是(  )。

?VARTYPE(TIME())

A.D

B.T

C.N

D.C

2.執行下列程序後,變量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

3.一F列關於查詢的説法,不正確的是(  )。

A.查詢是預先定義好的SQL SELECT語句

B.查詢是從指定的表或視圖中提取滿足條件的記錄,然後按照希望輸出的類型輸出查詢結果

C.在用命令使用查詢時,必須首先打開數據庫

D.查詢設計器中沒有“更新條件”選項卡

4.在SQL語句中,有可能將多個查詢結果合併成一個查詢結果的運算符是(  )。

0N

5.在當前數據庫中根據“學生”表建立視圖viewone,正確的SQL語句是(  )。

NE VIEW viewone AS SELECT*FROM學生

NE VIEW viewone SELECT*FRoM學生

TE VIEW viewone AS SELECT*FROM學生

TE VIEW viewone SELECT*FRoM學生

6.執行下列程序後,變量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

7.在數據庫設計過程中,如果表A和表B之間是一對多聯繫。下列進行的數據庫設計方法中,最合理的是(  )。

A.將表A的主關鍵字字段添加到表B中

B.將表B的主關鍵字字段添加到表A中

C.創建一個新表,該表包含表A和表B的主關鍵字

D.將表A和表B合併,這樣可以減少表的個數,便於管理和維護

8.在Visual FoxPro中,如果在表之間的聯繫中設置了參照完整性規則,並在更新規則中選擇了“級聯”,當更新父表中記錄的被參照字段時,系統的反應是(  )。

A.不做參照完整性檢查

B.若子表中有相關參照記錄,則同時自動更新子表中記錄的參照字段

C.若子表中有相關參照記錄,則禁止更新父表中的記錄

D.不做參照完整性檢查,可以隨意更新父表中的連接字段值

9.在Visual FoxPro中,命令“INDEX ON姓名TO xm”的功能是(  )。

A.建立一個名為的索引文件

B.建立一個名為的索引文件

C.在結構索引文件中建立一個名為xm的索引

D.在非結構索引文件中建立一個名為xm的索引

10.如果病人和病人家屬2個表建立了“級聯”參照完整性的刪除規定,下列選項正確的是(  )。

A.刪除病人表中的記錄時,病人家屬表中的相應記錄系統自動刪除

B.刪除病人表中的記錄時,病人家屬表中的相應記錄不變

C.無論病人家屬表中是否有相關的記錄,病人表中的記錄都不允許刪除

D.病人家屬表中的記錄不允許刪除.

11.假設會員表中包含會員號、姓名和電話字段。現在希望通過創建合適的索引來保證會員號的值唯一,下面選項中能夠保證會員號的值是唯一的語句是(  )。

X ON會員號TO hyh CANDIDATE

X ON會員號TO hyh UNIQUE

X ON會員號TAG hyh CANDIDATE

X ON會員號TAG hyh UNIQUE

12.設教師表保存的是教師信息,教師表的表結構為(教師編號,姓名,職稱)i圖書出版表保存的是教師出版圖書的情況,圖書出版表的表結構為(ISBN號,教師編號,圖書名,出版社,出版年份)。如果希望查詢從來沒有出版過圖書的教師編號和姓名,正確的SQL語句是(  )。

CT教師表.教師編號,姓名FROM教師表JOIN圖書出版表; 0N教師表.教師編號一圖書出版表.教師編號WHERE教師表.教師編號IS NULL

CT教師表.教師編號,姓名FROM教師表LEFT JOIN圖書出版表; ON教師表.教師編號一圖書出版表.教師編號WHERE圖書出版表.教師編號IS NULL

CT教師表.教師編號,姓名FROM教師表INNER JOIN圖書出版表; ON教師表.教師編號一圖書出版表.教師編號WHERE圖書出版表.教師編號IS NULL

CT教師表.教師編號,姓名FROM教師表RIGHT JOIN圖書出版表; ON教師表.教師編號一圖書出版表.教師編號WHERE圖書出版表.教師編號IS NULL

13.使用SQL的UPDATE語句更新數據表中的數據時,以下説法正確的是(  )。

A.如果沒有數據項被更新,將提示錯誤信息

B.更新數據時,必須帶有WHERE子句

C.不能更新主關鍵字段的值

D.一次可以更新多行數據或多個字段的值

14.“SELECT*FROM投稿表TO FILE temp WHERE審稿結果=ˋ通過ˊ”語句的功能是(  )。

A.將查詢結果保存到臨時文件中

B.將查詢結果保存到文本文件中

C.將查詢結果保存到temp表中

D.將查詢結果保存到數組temp中

15.設R和S是兩個基本表,“R RIGHT JOIN S ON R.某列=s.某列”表示(  )。

A.在連接結果中會將R中不滿足連接條件的數據保留下來

B.在連接結果中會將S中不滿足連接條件的數據保留下來

C.在連接結果中會將R和S中都不滿足連接條件的數據保留下來

D.在連接結果中,R和S的數據都必須滿足連接條件

16.有如下職員表:

職員(職員9(C,3),姓名(C,6),t哇N(C,2),職務(C,10))要在該表中插入一條記錄,正確的SQL語句是(  )。

RT T0職員VALUES(〝666〞,〝楊軍〞,〝男〞,〝組員〞)

RT INTO職員VALUES(〝666〞,〝楊軍〞,.T.,〝組員〞)

ND T0職員VALUES(〝666〞,〝楊軍〞,.T.,〝組員〞)

RT INTO職員VALUES(〝666〞,〝楊軍〞,〝男〞,〝組員〞)

17.有如下訂單表:

訂單(訂單號(C,4),客户號(C,4),職員號(C,3),簽訂日期(D.,金額(N,6,2))統計2012年各月份簽訂的訂單的總金額,正確的SQL語句是(  )。

CT MONTH(簽訂日期)月份,SUM(金額)總金額FROM訂單GROUP BY月份WHHRE

YEAR(簽訂日期)=2012

CT MONTH(簽訂日期)月份,SUM(金額)總金額FROM訂單GROUP BY月份HAVING

YEAR(簽訂日期)=2012

CT簽訂日期H(  )月份,SUM(金額)總金額FROM訂單GROUP:BY月份WHERE

簽訂日期( )=2012

CT簽訂日期H(  )月份,SUM(金額)總金額FROM訂單GROUP BY月份HAⅥNG

簽訂日期( )=2012

18.有如下職員表和訂單表:職員(職員號(C,3),姓名(C,6),性別(C,2),職務(C,10))訂單(訂單號(C,4),客户號(C,4),職員號(C,3),簽訂日期(D),金額(N,6,2))查詢職工〝李麗〞簽訂的訂單消息,正確的SQL.語句是(  )。

CT訂單號,客户號,簽訂日期,金額FROM訂單WHERE姓名=〝李麗〞

CT訂單號,客户號,簽訂日期,金額FROM職員,訂單WHERE姓名=〝李麗〞;

AND職員.職員號一訂單.職員號

CT訂單號,客户號,簽訂日期,金額FROM職員JOIN訂單;

WHERE職員.職員號=訂單.職員號AND姓名=〝李麗〞

CT訂單號,客户號,簽訂日期,金額FROM職員,訂單ON職員.職員號=訂單.職員號AND姓名=〝李麗〞

19.為職工數據庫表增加一個字段“聯繫方式”的SQL語句是(  )。

R TABLE職工ADD聯繫方式C(40)

R職工ADD聯繫方式C(40)

GE TABLE職工ADD聯繫方式C(40)

GE DBF職工INSERT聯繫方式(40)

10.使用SQL,語句完成“將所有職工的年齡增加1歲”,正確的操作是(  )。

TE職工SET年齡=年齡+1

TE職工ADD年齡+1

TE職工SET年齡=1

TE職工ADD l

  參考答案:

(1)D[解析]TIME()是系統時間函數,以24小時制、hh:mm:ss格式返回當前系統時間,函數值為字符型。VARTYPE(<表達式>[,<邏輯表達式>])是數據類型測試函數,用於測試<表達式>的類型,返回一個大寫字母。由於TIME()的返回值是字符型,因此運行VARTYPE命令時返回C。故本題D為正確選項。

(2)B[解析]本題涉及的考點有求字符串長度函數、取子串函數以及DO wHILE-ENDD0循環語句。其中LEN(<字符表達式>)返回指定字符表達式的長度,即所包含的字符個數,函數值為數值型。SUBSTR()從給定字符串的指定起始位置取指定長度的子串作為函數值。運行DO WHILE-ENDD0語句時,先判斷<條件>是否為真,如果是真則運行DOWHILE與ENDD0間的循環體,當運行到ENDD0時,再返回DO WHILE’重新判斷循環條件是否為真,確定是否再次運行循環體。若條件為假則結束循環語句運行ENDD0後的語句。程序執行過程如下:程序開始時l=len(x)=5,進入循環條件判斷,5>1,條件成立,執行第一次循環,xl-SUB-STR(x,I一1,2)=〝45〞,s=S+x1=”45“,i=5-2=3。第一次循環結束。程序回到循環條件判斷,3>1,條件成立,執行第二次循環,xl=SUBSTR(X,j-1,2)=”23”,s=s+x1=”4523”,i=3-2=1。第二次循環結束,程序回到循環條件判斷,i>1,條件不成立,結束循環。最終s中的值為字符串”4523”。故答案選B。

(3)C[解析]查詢是預先定義好的一個SQL SE-LECT語句,可根據需要直接使用。查詢是從指定的表或視圖中提取滿足條件的記錄,然後按照想得到的輸出類型定向輸出查詢結果,諸如瀏覽器、報表、表、標籤等。在用命令使用查詢時,必須要加擴展名,不必打開數據庫;視圖設計器有“更新條件”選項卡,而查詢設計器中沒有“更新條件”選項卡。故本題C為正確選項。

(4)C[解析]SQL支持集合的並(UNION)運算,可以將具有相同查詢字段個數且對應字段值域相同的SQL查詢語句用UNION短語連接起來,合併成一個查詢結果輸出。故本題C為正確選項。

(5)C[解析]建立視圖可以使用CREATE VIEw語句來實現,其基本的命令格式是:CREATE VIEW視圖名ASSELECT查詢語句,可見本題C為正確選項。

(6)B[解析]本題考查分支語句DO CASE-END-CASE,多分支語句需依次判斷CASE後的條件是否成立。當發現某個CASE後的條件成立時,就運行該CASE和下一個CASE間的命令序列,然後運行ENDCASE後面的命令。如所有的條件都不成立,則運行OTHERWISE與ENDCASE之間的命令序列,然後轉向ENDCASE後面的語句。因此本題運行Y=x*0.2=400,即B選項正確。

(7)A[解析]同一個數據庫中的表通常都是有關係的,當插入、刪除或修改一個表中的數據時,通過參照引用相互關聯的另一個表中的數據,來檢查對錶的數據操作是否正確。在父表中建立主索引或候選索引,在子表對應字段上建立普通索引,然後將主索引拖至普通索引上,建立起表之間的聯繫。故A為正確選項。

(8)B[解析]參照完整性約束包括更新規則、刪除規則和插入規則。更新規則中設置級聯的含義是,當更新父表中的連接字段(主關鍵字)值時,自動修改子表中的所有相關記錄。因此本題B為正確選項。

(9)A[解析]INDEX ON命令用於在程序中建立索引,執行命令“INDEX ON姓名TO xm”之後可建立一個名為xm的索引文件,索引文件的擴展名為,故本題A選項正確。

(10)A[解析]參照完整性約束包括更新規勇、刪除規則和插入規則,在刪除規則建立。級聯”的含義是,當刪除父表中的連接字段(主關鍵字)值時,自動刪除子表中的所有相關記錄。因此如果刪除病人表中的記錄,病人家屬表中的記錄也會自動刪除,故本題A選項正確。

(11)D[解析]程序中建立索引,其命令格式為;IN-DEX ON<索引表達式>TO<索引文件名>| TAG<標記名>Eov<索引文件名>][FOR<條件表達式>][AS-CENDING | DESCENDING][UNIQUE|CANDIDATE][ADDITIVE]。其中,各參數或短語的含義如下:

<索引表達式>可以是字段名,或包含字段名的表達式;TO<索引文件名>建立一個單獨的索引文件。現在只是在建立一些臨時聯繫時才使用;

·TAG<標記名>建立結構複合索引文件,索引名與表名同名,<標記名>給出索引名;

·OF<索引文件名>建立非結構複合索引文件,用<索引文件名>指定索弓I文件名;

·FOR<滌件表達式>給出索引過濾條件,該短語一般不使用;

·ASCENDING或DESCENDING指明建立升序或降序索引,默認是升序的;

·UNIQUE指明建立唯一索引;

·CANDIDATE指明建立候選索引;

·ADDITIVE説明現在建立索引時是否關閉以前的索引,默認是關閉。根據標準格式首先排除A、B選項,因為UNIQUE建立唯一索引,因此本題D選項正確。

(12)B[解析]本題考查超連接查詢,在一般的SQL中,超連接運算符是“*=”(左連接)和“=*”(右連接)。超連接查詢有四種連接方式,其基本格式為SELECT……FROM左表INNER | LEFT | RIGHT | FULL JOIN右表ON連接條件WHERE其它條件。其中:

·INNER JOIN等價於JOIN,為普通連接(也稱為內部連接),普通連接只有滿足連接條件的記錄才出現在查詢結果中;

·LEFT JOIN為左連接,左連接除滿足連接條件的記錄出現在查詢結果中外,第一個表中不滿足連接條件的記錄也出現在查詢結果中,不滿足連接條件的'記錄的對應部分為 L.:

·RIGHT JOIN為右連接,除滿足連接條件的記錄出現在查詢結果中外,第二個表中不滿足連接條件的記錄也出現在查詢結果中,不滿足連接條件的記錄的對應部分為.;

·FULL JOIN稱為全連接除滿足連接條件的記錄出現在查詢結果中外,兩個表中不滿足連接條件的記錄也出現在查詢結果中,即兩個表中的內容都會顯示在結果中,不滿足連接條件的記錄的對應部分為.。查詢從來沒有出版過圖書的教師編號和姓名,B為正確選項。

(13)D[解析]更新數據的命令格式為:UPDATE表名SET字段名1=表達式1[,字段名2=表達式2……][WHERE條件],一般使用WHERE子句指定更新的條件,並且一次可以更新多行數據或多個字段;如果不使用WHERE子句,則更新全部記錄,故本題D為正確選項。

(14)B[解析]本題考查簡單查詢,在SQL查詢語句的尾部添加TO FILE<文本文件名>[ADDITIVE]可以將查詢的結果放入新生成的指定文本文件中,因此該語句的功能是將查詢結果保存到文本文件中。故本題B為正確選項。

(15)B[解析]本題考查超連接查詢,超連接查詢有四種連接方式,本題RIGHT JOIN為右連接,表示除滿足連接條件的記錄出現在查詢結果中外,第二個表中不滿足連接條件的記錄也出現在查詢結果中,不滿足連接條件的記錄的對應部分為.。因此“R RIGHT JOIN S ON R.某列=S.某列”的意思即是在連接結果中會將S中不滿足連接條件的數據保留下來。故本題B為正確選項。

(16)D[解析]INSERT INTO<表名>[(字段名1[,字段名2,……])]VALUES(字段值1[,字段值2,……])命令用於插入數據,首先排除A、C選項。根據題意插入記錄,在性別字段只能為男或女,因此本題D選項正確。

(17)B[解析]本題考查分組與計算查詢,SELECT説明要查詢的字段,FROM説明要查詢的字段來自哪個表或哪些表,WHERE説明查詢條件,GROUP BY…HAVING用於按照簽訂日期進行分組。限定時間的語句應該為。YEAR(簽訂日期)-2012”,首先排除C、D選項。由於給GRoUPBY子句加條件必須使用HAVING,而不可以使用WHERE.因此可見本題B選項正確。

(18)C[解析]SQL的基本格式為SELECT-FROM-WHERE,其中SELECT説明要查詢的字段,FROM説明要查詢的字段來自哪個表或哪些表,WHERE説明查詢條件.本題查詢“李麗”簽訂的訂單信息,要查詢字段包括訂單號、客户號、簽訂日期和金額,WHERE後應該限定職員和訂單表中的姓名為“李麗”,由於訂單表中並沒有姓名這一字段,因此用職員號字段將兩表信息相連,AND表示“且”。故本題C為正確選項。

(19)A[解析]ALTER TABLE<表名>命令用於修改表的結構和字段名,Add用於添加字段,B、C、D選項的鬈式均不正確。故本題A為正確選項。

(20)A[解析]更新數據的命令格式為UPDATE表名SET字段名1=表達式1[,字段名2=表達式2…][WHERE條件],將所有職工的年齡增加1歲,應使用表達式“年齡=年齡+1”,故本題A為正確選項。