[pgsql-jp: 26274] Re: PL/pgSQLで宣言した定数を複数の関数で使い回したい
ISHIDA Akio
iakio @ pjam.jpweb.net
2002年 6月 4日 (火) 17:08:07 JST
こんにちは。石田です。
On Sat, Jun 01, 2002 at 06:34:15PM +0900, 羽生 章洋 wrote:
> Jun Kitamura <kitamura @ zoozee.jp>さん:
>
> レスありがとうございます。
>
> > Oracle の CREATE PACKAGE を存じませんで恐縮なのですが、定数をひと
> つのテー
> > ブルにまとめてしまって、キーとなる文字列から該当する数値を取り出す
> 関数を
> > 用意すれば可能かな?と思います。ただし、型に応じて関数の数が増えち
> ゃいま
> > すが。条件式の中で使えるし、定数を一箇所にまとめておくことはできま
> すよね。
>
> なるほど、ありがとうございます。そうですね。定数テーブルを
> 作るというのは良いですね。PL/pgSQLに限らずホスト言語全般で
> 共通して使えますし。是非参考にさせていただきます。
> 他にも方法をご存知の方いらっしゃいましたら、お教えください。
私も北村さんおっしゃる、定数をテーブルにまとめてしまう方法が
良いと思います。が、あえて他の方法をあげるなら、
create function const(text) returns integer as
'select case when $1 = ''hoge'' then 1
when $1 = ''foo'' then 2
...
end' language 'sql'
みたくすると、いちおう一箇所にまとめられます。
# 釈迦に説法のような気もするんですが ^^;;
--
ISHIDA Akio
pgsql-jp メーリングリストの案内