官术网_书友最值得收藏!

實(shí)例009 變量初始化及存儲(chǔ)數(shù)據(jù)記錄

【實(shí)例描述】

實(shí)例008對(duì)變量進(jìn)行初始化和賦值時(shí)使用了賦值運(yùn)算符“:=”,事實(shí)上,PL/SQL中對(duì)變量賦值還可以使用SELECT…INTO語(yǔ)句從數(shù)據(jù)庫(kù)中查詢數(shù)據(jù)對(duì)變量進(jìn)行賦值。但是查詢的結(jié)果只能是一行記錄,不能是零行或者多行記錄。

本實(shí)例從數(shù)據(jù)表STUDENT中取出學(xué)號(hào)為“120001”的學(xué)生,將其賦值到變量name中并輸出,STUDENT表的基本數(shù)據(jù)如圖1-28所示,編寫(xiě)PL/SQL塊執(zhí)行后的輸出結(jié)果如圖1-29所示。

圖1-28 數(shù)據(jù)表STUDENT初始數(shù)據(jù)

圖1-29 使用變量輸出查詢中的字段值

【實(shí)現(xiàn)代碼】

    SQL> DECLARE
      2  name VARCHAR2(50) DEFAULT 'Null';
      3  BEGIN
      4  SELECT sname INTO name FROM STUDENT WHERE sno='120001';
      5  DBMS_OUTPUT.PUT_LINE (name);
      6  END;
      7  /

【范例解析】

讀者可以看到,上述PL/SQL塊代碼聲明一個(gè)變量name為VARCHAR2數(shù)據(jù)類型,長(zhǎng)度為50,其初始化值是“NULL”。此處變量初始化時(shí)采用的是DEFAULT關(guān)鍵字來(lái)完成,并使用SELECT…INTO語(yǔ)句對(duì)變量name賦值,并用輸出語(yǔ)句將name中的值輸出。

對(duì)比STUDENT數(shù)據(jù)表,可以看到學(xué)號(hào)為“120001”的學(xué)生姓名值為“陳誠(chéng)”,將該值賦給變量name并輸出,從而得到圖1-29所示的輸出。

注意:使用SELECT?INTO語(yǔ)句對(duì)變量賦值,要求查詢的結(jié)果必須是一行,不能是多行或者沒(méi)有記錄,否則賦值語(yǔ)句將出現(xiàn)錯(cuò)誤。

主站蜘蛛池模板: 青龙| 崇州市| 永州市| 濮阳市| 自治县| 报价| 绥宁县| 青州市| 大冶市| 衡山县| 洪泽县| 开平市| 桂林市| 禄丰县| 四川省| 霍山县| 香河县| 洪雅县| 都昌县| 伊宁县| 建水县| 许昌县| 海淀区| 简阳市| 邹城市| 南京市| 洛浦县| 宜黄县| 榆林市| 广昌县| 天峨县| 札达县| 卢龙县| 子洲县| 商水县| 来宾市| 钦州市| 双牌县| 奉节县| 弥渡县| 永城市|