らくらくOracle とってもやさしいPL/SQLプログラミング塾[第2版]
概 要
Oracleデータベースの運用管理に必須のプログラミング言語「PL/SQL」をイラストとサンプルコードでやさしく解説した入門書です。PL/SQLは保守もしやすく、またOracleのバッチ言語として特筆すべきパフォーマンスを発揮します。本書では、PL/SQLの基本構造、制御構造、変数、配列、関数、明示カーソル、例外処理、デバッグ、ユーティリティパッケージなどを多数のイラストとサンプルコードでやさしく解説。初心者向けに難しい内容はあえて除き、入門書として特化された内容となっています。「SQL*Plusコマンド」「和暦の使用方法」「カーソルが不要なSELECT文」など役立つコラムも掲載しています。Oracle11g/10g/9i対応。
| 著者 | 永村弘道、水田巴 |
| 価格 | 円(税込)(本体2000円) |
| ISBN | 978-4-7980-1519-4 |
| 発売日 | 2009/4/24 |
| 判型 | A5 |
| 色数 | 2色 |
| ページ数 | 256 |
| CD/DVD | - |
| 対象読者 | 初級 |
| シリーズ | - |
目次
Lesson.1 PL/SQLの基礎
1.1 PL/SQLの特徴
■SQLとPL/SQL
■PL/SQLの3つの特徴
■PL/SQLが使われる環境
1.2 PL/SQLを使う利点
■高い生産性と保守性
1.3 サブプログラムの基本構造
■2つの部分で構成されるサブプログラムの構造
1.4 ストアドプログラムの種類
■ストアドプロシージャとストアドファンクション
1.5 ストアドプロシージャの呼び出し
■無名PL/SQLブロックやホスト変数を使用
1.6 ストアドファンクションの呼び出し
■SQL文から直接呼び出す
Lesson.2 変数とデータ型
2.1 PL/SQLで使える文字と記号
■原則として日本語は使えない
2.2 変数の有効範囲のしくみ
■変数の有効範囲(スコープ)とは
2.3 変数と定数の宣言
■変数は宣言部で宣言する
■変数は1つずつ別々に宣言する
■宣言時に初期値を設定する
■定数はCONSTANTで宣言する
2.4 変数に使用できるデータ型の種類
■スカラー型、コンポジット型、LOB型、参照型
2.5 スカラー型の変数
■スカラー型とは
■値の代入と比較
■データ型の変換
■NULLとの比較
2.6 BOOLEAN型
■BOOLEAN型とは
■BOOLEAN型の使用例
2.7 コンポジット型の変数
■コンポジット型とは
■コレクションとは
■レコードとは
2.8 %TYPE属性、%ROWTYPE属性
■%TYPE属性とは
■%ROWTYPE属性とは
2.9 LOB型の変数
■LOBロケータを変数に格納
2.10 SQL*PlusとPL/SQLの変数の受け渡し
■ホスト変数とバインド変数
■コロンを付けてPL/SQLに渡す
Lesson.3 構文規則と実行文の作成
3.1 構文の要素と記述規則
■構文の要素とは
■デリミタ
■識別子
■リテラル
■構文の記述規則
3.2 ブロックの構造
■ブロックの構成単位
■ブロック分け
3.3 ストアドプログラムの種類と作成方法
■CREATE文を使ってストアドプログラムを記述
■プロシージャ、ファンクション、パッケージ、トリガーの作成
3.4 コメントの使い方
■コメントは2種類
3.5 識別子の有効範囲のしくみ
■識別子のスコープ(有効範囲)とは
■内側の識別子が有効
3.6 演算子の使い方
■SQL独自の演算子に注意
■結合演算子
■範囲演算子
■文字列結合演算子
3.7 NULLの扱い方
■NULLと比較するとFALSEになる
■NULLはIS NULL演算子で判定する
3.8 関数の種類と使い方
■関数(組込みファンクション)の種類
■エラーレポート関数
■数値関数
■文字関数
■変換関数
■日付関数
■その他の関数
Lesson.4 制御構造
4.1 制御構造の種類
■処理の流れを変えるしくみ
4.2 条件分岐命令の使い方
■条件分岐命令のしくみ
■IF~THEN文
■IF~THEN~ELSE文
■IF~THEN~ELSIF文
■CASE文
4.3 反復命令の使い方
■反復命令のしくみ
■単純LOOP文
■WHILE~LOOP文
■FOR~LOOP文
4.4 ラベルの指定
■ラベルを使ってLOOP文から脱出する
Lesson.5 明示カーソル
5.1 カーソルのしくみ
■カーソルとは
■カーソルの種類
5.2 明示カーソルの機能
■後方に1件ずつしか移動できない
■明示カーソルの4つの制御手順
■カーソルの宣言
■カーソルを使ったフェッチ
5.3 明示カーソルの属性
■明示カーソルの属性とは
■明示カーソルの属性の種類
■明示カーソルの属性の戻り値
■明示カーソルの属性を使った全件処理
5.4 カーソルFORループによる制御の自動化
■カーソル制御の自動化
■レコード型変数の定義の自動化
5.5 明示カーソルの並行使用
■複数のフェッチの制御
5.6 副問合せを使ったカーソルFORループ
■事前定義しないカーソルFORループ
5.7 動的SQL文とカーソル変数
■動的SQL文とは
■動的SQL文とカーソル変数の使用例
Lesson.6 明示カーソル(上級)
6.1 パラメータを伴うカーソルの宣言
■汎用的なカーソル
■位置パラメータと名前パラメータ
■パラメータのデフォルト値
6.2 FOR UPDATE句の使い方
■FOR UPDATE句
■FOR UPDATE OF句
6.3 WHERE CURRENT OF句の使い方
■WHERE CURRENT OF句
Lesson.7 例外処理
7.1 例外処理のしくみ
■例外処理とは
■例外の種類
■主な事前定義例外の種類
7.2 例外ハンドラと事前定義例外
■EXCEPTION句内でWHEN句を使って記述
■予想できない例外はOTHERSで対処
7.3 ユーザー定義例外
■ユーザー定義例外の呼び出し方法
7.4 例外処理の移動と再呼び出し
■ネストされたブロックでの例外処理のしくみ
■例外の再呼び出し
7.5 非事前定義例外の処理
■非事前定義例外とは
■EXCEPTION_INITで例外名を付ける
■ユーザー定義例外とは
■宣言部で宣言し、RAISE文で呼び出す
7.6 例外検出用の関数の使い方
■SQLCODE関数、SQLERRM関数
7.7 ユーザー定義のエラーメッセージの発行
■RAISE_APPLICATION_ERRORプロシージャ
Lesson.8 PL/SQLのデバッグ
8.1 DBMS_OUTPUT.PUT_LINEによるデバッグ
■PL/SQLのデバッグの必須アイテム
■DBMS_OUTPUT.PUT_LINEの使用例
■使用上の注意点
8.2 SQL Developerによるデバッグ
■SQL Developerとは
■SQL Developerのインストール
■データベースへの接続
■SQL Worksheetを使ったSQL文の実行
■PL/SQLソースコードのデバッグ
Lesson.9 ユーティリティパッケージ
9.1 ユーティリティパッケージの種類
■ユーティリティパッケージとは
■ユーティリティパッケージの種類
9.2 DBMS_JOBパッケージの使い方
■定期的に行う管理プロシージャをスケジュール
■DBMS_JOBパッケージのプロシージャ
9.3 DBMS_OUTPUTパッケージの使い方
■バッファに蓄積した情報を後で取り出す
■DBMS_OUTPUTパッケージのプロシージャ
9.4 DBMS_STATSパッケージの使い方
■オプティマイザ統計情報の表示および変更
■DBMS_STATSパッケージのプロシージャ
9.5 DBMS_UTILITYパッケージの使い方
■様々なユーティリティ・ルーチンを提供
■DBMS_UTILITYパッケージのプロシージャ
9.6 UTL_FILEパッケージの使い方
■テキストファイルの読み込みと書き込み
■UTL_FILEパッケージのプロシージャ
Appendix ちょっと高度な使い方
Appendix 1 PL/SQLで正規表現を使ってみよう!
■正規表現とは
■正規表現の関数と条件の使い方
Appendix 2 ネイティブ・コンパイルをしてみよう!
■ネイティブ・コンパイルとは
■ネイティブ・コンパイルの手順
Appendix 3 DBMS_PROFILERパッケージを使ってみよう!
■DBMS_PROFILERパッケージとは
■DBMS_PROFILERパッケージの使い方

