- PR -

SQLSERVER2005ストアドプロシージャのパラメータ

1
投稿者投稿内容
uken
会議室デビュー日: 2006/05/25
投稿数: 14
投稿日時: 2007-12-06 15:19
以下のようにストアドプロシージャを作成しました。
パラメータとしてデータベース名とコード値を渡してSQL結果を取得したいのですが、
『[@DB].』がパラメータ値に置き換わりません。
どのようにすればよいかお分かりの方がいらっしゃいましたらご教授ください。

CREATE FUNCTION [dbo].[F_GET_BUMON_NAME] (
@DB varchar(20), -- データベース名
@CK int -- コード
)
RETURNS nvarchar(32)
WITH ENCRYPTION
AS

-------------------------------------------
-- メイン処理
-------------------------------------------
BEGIN
DECLARE @Name varchar(32) -- 名称

SELECT @Name = dbo.trim(NAME) FROM [@DB].[dbo].[BUMON]
WHERE CK = @CK
AND (CODE >= 0 AND CODE <= 9999
OR CODE >= 10001 AND CODE <= 19999)

RETURN (@Name)
END
GO
こあら
大ベテラン
会議室デビュー日: 2007/06/26
投稿数: 157
投稿日時: 2007-12-06 15:41
静的SQLでFROMをパラメータで置換できるDBなんてあるのですか?
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2007-12-06 19:59
Books Onlineのキーワード検索で、「動的」を指定すると、動的SQLステートメントという項目が見つかると思います。
その内容を読めば、幸せになれるでしょう。
1

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