0
SQL Server 2008 R2にストアドプロシージャを作成しています。名前がストアドプロシージャのパラメータとして渡されたテーブルの行数を割り当てます。
私がやろうとしているのは、テーブルの行数を変数に代入することです。ただし、ストアドプロシージャのパラメータとしてテーブルの名前を渡すだけです。
私が書いたコードは動作しません。最初の試みで
CREATE PROCEDURE [dbo].[Foo]
@inputTableName VARCHAR(50)
AS
BEGIN
/*First Attempt*/
DECLARE @numOfRows INT = (SELECT COUNT(*) FROM @inputTableName)
/*Second Attempt*/
DECLARE @numOfRows INT = (EXEC('SELECT COUNT(*) FROM ' + @inputTableName))
END
が、私はこのエラーを取得しています:EXEC
近く
不正な構文:は、テーブル変数を宣言しなければなりません「@inputTableName」第二一 、私はこれを取得しています
何か助けていただければ幸いです。