プロが教えるわが家の防犯対策術!

4つのテーブルのいずれかをアクセスしますが、
select文はひとつでwhereでテーブルを指定したいので、
 例:select * from ビュー where table_no=1
とかで、table_noの値でアクセスするビューは
作れますか?
※この例の場合、select * from table1が実行したい。

4つのテーブルは全て同じ構造で、
データが違うのみです。

A 回答 (2件)

ビューでは不可能だと思います。



同じ様なアクセス方法を行いたいのであれば、
テーブル値を返すユーザー定義関数を作成する方法があるかと思います。構造は同じと言う事なので、1つの関数で済むと思いますし。

例:Select * From ユーザー定義関数(1~4のパラメータ)

上記例の様な使い方が可能です。
    • good
    • 0

こんちは。



多分、出来ないって回答でいいとは思うんですが。。。


ビューはそれだけで完結しているオブジェクトなので、やりたい場合は、ストアドなどを使う方がよいようです。

単純に、ストアドにテーブルナンバー渡して、ビューを呼び出す。じゃダメなんでしょうかね??
自分だったら、あらかじめ、ビューの1~4を作っておいて、それぞれテーブル1~4をselectするビューにしておき
ストアドやらプログラムの方から、パラメータを読み込んでどのビューを使用するか判断させますかね。。。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A