
- PL/SQL 教程
- PL/SQL - 首頁
- PL/SQL - 概述
- PL/SQL - 環境
- PL/SQL - 基本語法
- PL/SQL - 資料型別
- PL/SQL - 變數
- PL/SQL - 常量和字面量
- PL/SQL - 運算子
- PL/SQL - 條件
- PL/SQL - 迴圈
- PL/SQL - 字串
- PL/SQL - 陣列
- PL/SQL - 過程
- PL/SQL - 函式
- PL/SQL - 遊標
- PL/SQL - 記錄
- PL/SQL - 異常
- PL/SQL - 觸發器
- PL/SQL - 包
- PL/SQL - 集合
- PL/SQL - 事務
- PL/SQL - 日期和時間
- PL/SQL - DBMS 輸出
- PL/SQL - 面向物件
- PL/SQL 有用資源
- PL/SQL - 問題與解答
- PL/SQL - 快速指南
- PL/SQL - 有用資源
- PL/SQL - 討論
PL/SQL 線上測驗
以下測驗提供與PL/SQL相關的多項選擇題 (MCQ)。您需要閱讀所有給定的答案,然後點選正確的答案。如果您不確定答案,可以使用顯示答案按鈕檢視答案。您可以使用下一組題按鈕檢視測驗中的新題組。

問題 1 - 關於 PL/SQL 中的資料型別,以下哪一項是正確的?
A - 大物件或 LOB 資料型別是指向儲存在與其他資料項(如文字、圖形影像、影片剪輯和聲音波形)分開的的大物件的指標。
答案:D
問題 2 - 以下程式碼中的錯誤是什麼?
DECLARE c_id := 1; c_name customers.name%type; c_addr customers.address%type; BEGIN SELECT name, address INTO c_name, c_addr FROM customers WHERE id = c_id; END;
A - 您不能使用 SQL 的 SELECT INTO 語句為 PL/SQL 變數賦值。
B - 此處的 SELECT INTO 語句錯誤。它應該是:SELECT c_name, c_address INTO name, addr
答案:D
問題 3 - 以下程式碼的輸出是什麼?
DECLARE x number := 4; BEGIN LOOP dbms_output.put_line(x); x := x + 1; exit WHEN x > 5; END LOOP; dbms_output.put_line(x); END;
答案:A
問題 4 - 關於 PL/SQL 資料結構 VARRAY,以下哪一項是正確的?
B - VARRAY 型別是在模式級別使用 CREATE VARRAY 語句建立的。
答案:C
問題 5 - 以下 PL/SQL 塊將列印什麼?
DECLARE a number; b number; c number; PROCEDURE findMin(x IN number, y IN number, z OUT number) IS BEGIN IF x < y THEN z:= x; ELSE z:= y; END IF; END; BEGIN a:= 2; b:= 5; findMin(a, b, c); dbms_output.put_line(c); END;
答案:A
問題 7 - 請觀察下面給出的語法:
CREATE [OR REPLACE ] TRIGGER trigger_name {BEFORE | AFTER | INSTEAD OF } {INSERT [OR] | UPDATE [OR] | DELETE} [OF col_name] ON table_name [REFERENCING OLD AS o NEW AS n] [FOR EACH ROW] WHEN (condition) DECLARE Declaration-statements BEGIN Executable-statements EXCEPTION Exception-handling-statements END;
INSTEAD OF 子句用於在以下哪個物件上建立觸發器?
答案:A
答案:A
問題 9 - 以下哪個程式碼是建立名為 salary 的索引表以儲存整數和名稱的正確語法,並且名稱欄位將作為鍵?
A - TYPE salary IS TABLE OF NUMBER INDEX BY VARCHAR2(20);
B - CREATE TABLE salary OF NUMBER INDEX BY VARCHAR2(20);
C - TYPE salary IS INDEXED TABLE OF NUMBER INDEX BY VARCHAR2(20);
答案:A
問題 10 - 以下程式碼嘗試建立一個名為 rectangle 的基本物件,該物件將被繼承。程式碼中有什麼錯誤?
CREATE OR REPLACE TYPE rectangle AS OBJECT (length number, width number, member function enlarge( inc number) return rectangle, NOT FINAL member procedure display)
A - 宣告應寫成 CREATE OR REPLACE OBJECT rectangle AS …
答案:C
解釋
更正後的程式碼為:
CREATE OR REPLACE TYPE rectangle AS OBJECT (length number, width number, member function enlarge( inc number) return rectangle, NOT FINAL member procedure display) NOT FINAL