0
以下のコードの出力変数がnullを返す理由の一番下には到達できません。私は、デバッグでそれを踏んだり、SQL文をコピー/実行して、期待値を返します。しかし、私がそれを実行すると、ただnullです。どんな助けも素晴らしいでしょう。出力値のnullを返すSQL Server 2008ストアドプロシージャ
ALTER PROCEDURE [dbo].[spCountOfMostRecentByTableName] @table VARCHAR(120),
@count BIGINT OUTPUT
AS
BEGIN
DECLARE @parameters NVARCHAR(100)
SET @parameters = '@count BIGINT OUTPUT'
DECLARE @date DATE = dbo.MostRecentTradeDateForDataDownload()
DECLARE @sql NVARCHAR(MAX) = N'
SELECT COUNT(ID)
FROM ' + @table +
' WHERE DateAdded = ''' + CAST(@date AS CHAR) + '''';
EXEC sp_executesql @sql, @parameters, @count = @count OUTPUT
SELECT @count
END
*シャッター*。このタイプのプロシージャは、SQLインジェクションのために熟しています。 – Thomas
@トーマスありがとう。私はそれが実稼働環境でのベストプラクティスから遠いことを知っていますが、これは私のローカルマシンに常駐する個人的なアプリです。 – StatsViaCsh