
【4】23.關於資料模型的敘述,下列何者錯誤?
「資料模型」(Data Model)是描述資料庫中資料的特性,描述資料與資料間的關係和資料的限制條件(用來檢查
是否儲存正確資料的條件)
階層式資料庫模型(Hierarchical Database Model)類似網路式資料庫模型,只是使用樹狀結構來組織資料,記錄資
料間是以父子關係來建立連接,子記錄只能擁有一個父記錄
網路式資料庫模型(Network Database Model)是將資料連接成網路狀圖形,支援多對多關聯性(Relationship),而且
資料間的連接可以有迴圈
在階層式資料庫模型不可重複相同的記錄型態來建立多對多關聯性(Relationships);在網路式資料庫模型的一個成
員型態記錄不可有多個擁有者型態的記錄
【4】24.有關外來鍵特性的敘述,下列何者錯誤?
外來鍵一定參考其他關聯表的主鍵,可以用來建立兩個關聯表間的連接。例如:圖書關聯表的作者編號外來鍵是
作者關聯表的主鍵
外來鍵在關聯表內不一定是主鍵,例如:在圖書關聯表的作者編號外來鍵並不是主鍵
外來鍵可以是空值 NULL
外來鍵無法參考同一個關聯表的主鍵
【3】25.下列何種指令可做到 TOP 5 相同的功能?
SELECT @@ROWCOUNT=5 SET @@ROWCOUNT =5
SET ROWCOUNT 5 SET COUNT 5
【2】26.執行以下程式片段的結果為:
DECLARE @date1 DATE
DECLARE @date2 DATE
set @date1 = '2003-5-8'
set @date2 = '2018-4-8'
SELECT datediff(YY,@date1,@date2)
14 15 -14 -15
【3】27.請問 MS SQL SERVER 的Data Engine 使用哪一個傳輸協定以及哪一個埠號?
21 / TUP 1024 / TCP 1433 / TCP 8088 / TUP
【4】28. SQL Server 可以使用鎖定(Locking)方法來處理多交易執行的並行控制,支援多種資料鎖定模式和鎖定層級來
控制交易的進行,下列敘述何者錯誤?
資料鎖定是當交易 A執行資料讀取(Read)或寫入(Write)的資料庫單元操作前,需要先將資料鎖定(Lock)。若同時
有交易 B存取相同的資料,因為資料已經被鎖定,所以交易 B需要等待,直到交易 A解除資料鎖定(Unlock)
鎖定層級(Lock Level)也稱為「鎖定顆粒度」(Lock Granularity),這是指鎖定時,鎖定資源的範圍大小。在 SQL Server
可以一筆一筆記錄的鎖定、多筆記錄分頁或範圍的鎖定,到整個資料表或完整資料庫的鎖定
共用鎖定(Shared Lock)是使用在不變更或更新資料的讀取作業,例如:SELECT 指令。共用鎖定的資料依然允許
其他交易的共用鎖定,但不允許獨佔鎖定
更新鎖定(Update Lock)是使用在資料修改動作,例如:INSERT、UPDATE 或 DELETE 操作指令。可以確保不對
相同資源同時進行多重更新操作,獨佔鎖定的資料並不允許其他交易的任何鎖定
【4】29.如【圖 29】為「員工」資料表內容,查詢沒有留下手機的員工資料,其語法應為?
SELECT * FROM 員工
WHERE 手機號碼 IN NULL
SELECT * FROM 員工
WHERE 手機號碼 == NULL
SELECT * FROM 員工
WHERE 手機號碼 = NULL
SELECT * FROM 員工
WHERE 手機號碼 IS NULL
【3】30. INSERT 一筆紀錄時,如果沒有指定資料行的值時,在沒設定任何資料行屬性的情況之下,預設是:
空白 0 NULL 出現錯誤訊息
【3】31.學生資料表新增一筆資料,執行結果如【圖 31】所示,其語法應為:
INSERT(100921,'李文文','女',84,63,92) INTO 學生
INSERT VALUES(100921,'李文文','女',84,63,92) INTO 學生
INSERT INTO 學生 VALUES(100921,'李文文','女',84,63,92)
INSERT INTO 學生 VALUES IS (100921,'李文文','女',84,63,92)
【3】32. DECLARE @number INT
SET @number = 10
SET @number = @number + 20.5
SELECT @number
輸出結果為何?
10 20
30 40
【2】33.想要將資料表的內容全部刪除而不想留下任何紀錄,可以使用以下哪個指令?
DELETE TRUNCATE TRUNCATE ALL DELETE ALL
【4】34.若想把 NULL 值置換成 0,可以使用下列何種方法?
SET ANSI_NULL ON NULL(運算式)
ANSI_NULLL(運算式,0) ISNULL(運算式,0)
【2】35. SELECT SUBSTRING('ABCDEFGH' , 5 , 3)執行結果為何?
FGH EFG CDEFG DEFGH
【4】36.下列何者錯誤?
SELECT DATENAME( MONTH, '2018-01-28' )執行結果為一月
SELECT DATEPART( MONTH, '2018-01-28' )執行結果為 1
SELECT MONTH( '2018-01-28' ) 執行結果為 1
SELECT EOMONTH( '2018-01-28' ,1)執行結果為 1
【2】37. SELECT FLOOR(-30.37)的執行結果為:
-32 -31 -30 -29
【3】38.使用多個資料表時,若未特別設定,資料表間的關聯方式是:
LEFT JOIN RIGHT JOIN
INNER JOIN FULL JOIN
【3】39.主索引鍵有什麼特性?
設定之後無法關聯
設定之後才能設定 CHECK 條件約束
設定之後就不能重複
設定之後就不能刪除
【2】40.下列哪一個敘述執行結果會如【圖 40】所示?
SELECT 員工編號, 姓名, 性別, ROW_NUMBER() OVER (PARTITION BY 姓名 ORDER BY 員工編號 ASC)
序號 FROM 員工
SELECT 員工編號, 姓名, 性別, ROW_NUMBER() OVER (ORDER BY 員工編號 ASC) 序號 FROM 員工
SELECT 員工編號, 姓名, 性別, RANK_NUMBER() OVER (ORDER BY 員工編號 DESC) 序號 FROM 員工
SELECT 員工編號, 姓名, 性別, RANK_NUMBER() OVER (ORDER BY 員工編號 ASC) 序號 FROM 員工
貳、非選擇題二大題(每大題 25 分)
第一題:
請回答下列有關 JAVA 程式在類別的建構式(Constructor)方法應用:
(一)何謂建構式和預設建構式?請簡述之。【10 分】
(二)請寫出以下描述的 JAVA 程式:在 Customer 類別內定義三個建構式分別有 Customer ()建構式、
Customer (weight)建構式、Customer (height, weight)建構式等,其一開始初始化 height 資料成員
的值為 150 和weight 資料成員的值為 40,利用建構式多載傳入不同數目的引數,分別來初始
化height 和weight 資料成員,並印出以下輸出畫面結果。【15 分】
第二題:
請回答下列有關 COBOL 程式,在索引輸入-輸出檔(Indexed I-O file)的應用:
(一)請說明:
(1)索引輸入-輸出檔案提供了哪兩種方式來存取紀錄?【3分】
(2)何謂 Alternate Record Keys?【3分】
(3)索引輸入-輸出檔案在操作上的重點?【4分】
(二)請利用索引輸入-輸出檔案程式來撰寫下列描述:將客戶存摺資料加入檔案內,每一個客戶存摺
資料包含以下各欄:帳號、客戶名稱、客戶地址、客戶利率、目前借款金額、放款帳號、存款
餘額等,另加上 10 筆明細交易資料(包含:交易日期、交易金額、交易代號)。【 15 分】
註:作答時只需撰寫 DATA DIVISION 以及 PROCEDURE DIVISION 兩部分即可。