- PR -

SQL Server でストアドの引数からSQL文を取り込んで処理する方法

1
投稿者投稿内容
Neverland
ベテラン
会議室デビュー日: 2006/11/27
投稿数: 56
投稿日時: 2006-12-26 20:15
度々申し訳ありません。
どなたか教えていただけますでしょうか。

SQL Server (2000 または 2005) のストアドで悩んでいます。
一意ではないテーブルを更新するSQL文を、1つのストアドの中に書けないものかと悩んでいます。

例えばある時は、
「select * from master_db01.dbo.SyainMaster」
で、あるときは、
「select * from master_db02.dbo.SyainMaster」です。

同様のテーブル(テーブルフォーマット)ですが、データベースが違うとか、スキーマが違う場合があるのです。
この時、VBで書くように、
〜「master_db01.dbo.」 と 「master_db02.dbo.」 を引数から取込む〜

Sub TestFunc(Byval DB_NAME As String)
Dim SQL_VAL As String
SQL_VAL = "SELECT * FROM " & DB_NAME & "SyainMaster "
〜〜
End Sub

Call TestFunc("master_db01.dbo.")

といった、「" &」 と 「 & "」 の間に変数を挟むようなやり方です。
できないものでしょうか。よろしくお願いいたします。
(これ以外にもありましたらお願いいたします)
忠犬
大ベテラン
会議室デビュー日: 2006/05/01
投稿数: 109
投稿日時: 2006-12-26 22:44
EXECUTEで動的実行しては?

http://homepage1.nifty.com/kojama/works/rdbms/mssql/prog.html#term05
1

スキルアップ/キャリアアップ(JOB@IT)