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

Access2003とSQL Server2005Expressです。
初歩的な質問で恐縮です。
以下のストアドプロシージャのデータ取得先を、テーブルではなく
別のストアドプロシージャにしたいのですが、
その方法がわかりません。
CREATE PROCEDURE テスト AS
SELECT コード, 社名, 住所, 電話
FROM 名簿
    ↑
    これをテーブルではなく、別のストアドプロシージャを
    指定したのですが・・・。
    ここをストアドプロシージャ名にするとエラーになります。
    どうすればよろしいでしょうか?

A 回答 (1件)

ストアドプロシージャは、SELECTするものではなく、EXECするものなので、テーブルの代わりには使うことはできません。



1)そのストアドプロシージャを書き換えて別のものにしてもいい場合、
 いくつか制約はありますが、テーブル関数に書き換えることでSELECT文で使うことができます。
2)そのストアドプロシージャを書き換えることができない場合
 一旦ワークテーブルに受けてSELECTする方法が使える場合があります。

いずれにしても、そのストアドプロシージャがどのようなパラメータがあって、戻りがどのようなものか、もう少し詳細が必要かと。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
2)の方法でいきます。
お世話になりました。

お礼日時:2008/09/10 08:21

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