データベース千夜一夜第31回

ストアドプロシージャ(5)~補足・CASE関数とエラー処理 長谷川裕行
有限会社 手國堂

ここまで4回にわたって、ストアドプロシージャの作り方を紹介してきました。ストアドプロシージャだけでも1冊の(というか、実は入門と応用で2冊の)本ができるくらいです(私が監修した翔泳社の本です^^;)。詳細に述べているとキリがありません。

このコラムはSQL Serverをベースにしてデータベース処理の基本から応用までを一通り解説することが目的なので、ストアドプロシージャに関してはひとまずこの辺で区切りを付けておきます。

最後に、ストアドプロシージャ関連の補足として、値を順次比較していくCase関数とエラー処理に便利なRAISERROR命令を紹介しておきましょう。


サンプル・データベースとサンプル・アプリケーションの扱いについて
第9回以降、新しいサンプル・データベースを使っているのでご注意ください。新しいサンプル・データベースの登録方法については、第9回の記事から「新しいサンプルデータベースの準備」の項をお読みください。

なお、今回はテーブルの内容を書き換えるSQLを実行しないため、データベースやテーブルをバックアップする必要はありません。



- 目次 -
制御構造の補足~Case関数
値を順次比較する
単純Case関数
検索Case関数
値の一時的な変更に便利
エラー処理の補足~sysmessagesテーブル
@@ERRORを使ったエラー処理
メッセージを保存したテーブル
番号からメッセージを導く
エラー処理の補足~RAISERROR命令
エラーメッセージの形式
独自のメッセージを表示させたい
RAISERRORの書式
置換記号
エラーメッセージの例
あとがき
長谷川 裕行 (はせがわ ひろゆき)
有限会社 手國堂 代表取締役  http://www.hirop.com/

大阪芸術大学 写真学科講師。フリーライター。日経ソフトウェアなどに連載。
『ソフトウェアの20世紀』、『独習SQL』など著書多数。

Copyright © MESCIUS inc. All rights reserved.