SQL Server

テーブル名を引数として受け取ってSQLを実行するSQL Serverのストアドプロシージャのサンプル。

SELECT文でFROMに指定するテーブル名を変数化するときの例。

これも覚書したつもりでしてなかったようなので、今更ながら覚書しておく。
スポンサードリンク


テーブル名を変数に代入してSQLを実行するサンプルストアドプロシージャ

SELECT文を実行する対象のテーブルを引数として受け取ってSQLを実行するサンプルストアドプロシージャを以下に記載する。

以下サンプルストアドプロシージャを作成する際のスクリプト。
USE [TEST_DB]
GO
/****** オブジェクト:  StoredProcedure [dbo].[OpenTable]    スクリプト日付: 12/10/2008 17:06:23 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[OpenTable]
    (
    @tbname varchar(50)
    )
AS
    BEGIN
        SET NOCOUNT ON;
        exec ('SELECT * from [' + @tbname + ']')
    END
上記のスクリプトで作成したストアドプロシージャの実行は、以下のようになる。
DECLARE @RC int
DECLARE @tbname varchar(50)

EXECUTE @RC = [TEST_DB].[dbo].[OpenTable] 't1'

スポンサードリンク

  

関連記事