PL/SQL練習記録(条件制御IF文)


はじめに

javaとSQLには少し触れたことがあるのですが
PL/SQLは初めてなので練習するついでに記録をしていこうと思います。

実行環境(事前準備)

・Oracle 12C を使用しました。
環境を作成後、スキーマを作成しようとしたところエラーが発生。
「ORA-65096: 共通ユーザーまたはロール名が無効です」
調べてみたところCDBに接続していたのが原因でした。(CDBってなんぞやレベル)
今回の記事内容とは異なるのでざっくりと書きますがPDBに接続をすることで解決しました。
いずれ詳しく記載しようと思います。

IF文

条件制御(条件によって処理を分ける)といわれるもの。
IF文はjavaでも登場したのですんなりと理解できました。
実際に試したのはこちら↓

IF文.
DECLARE
 test NUMBER := 10;
BEGIN 
 IF test = 10 THEN
  DBMS_OUTPUT.PUT_LINE('値は10');
  ELSE
   DBMS_OUTPUT.PUT_LINE('値は10以外');
  END IF;
END;

実行すると「PL/SQLプロシージャが正常に完了しました。」のみが表示。
DBMS_OUTPUT~で記載した表示がでないなーと調べると下記実行が必要なようです。

DBMS_OUTPUTの出力を表示する.
SET SERVEROUTPUT ON;

もう一度実行してみると「値は10」と表示されました。

解説

作成したIF文についてコメント解説。

IF文解説.
DECLARE  --宣言部
 test NUMBER := 10;    -- NUMBER型の変数testに10を挿入
BEGIN   --処理部
 IF test = 10 THEN   -- もしtestの値が10だった時
  DBMS_OUTPUT.PUT_LINE('値は10');   -- 「値は10」と表示
  ELSE                  --  それ以外の時(10ではない時)
   DBMS_OUTPUT.PUT_LINE('値は10以外'); --  「値は10以外」と表示
  END IF;        --IF文終了
END;

参考文献

プロとしてのOracle PL/SQL入門

プロとしてのOracle PL/SQL入門 【第3版】(Oracle 12c、11g、10g対応)【電子書籍】[ アシスト教育部 ]

価格:1,320円
(2020/11/25 13:10時点)
感想(1件)

Amazonはこちら