1

以下は、これまでに実行したときにこのエラーが発生し続けるストアド プロシージャです: メッセージ 137、レベル 16、状態 1、プロシージャ db_recession_band_dates_save、行 18 スカラー変数 "@dates" を宣言する必要があります。

ALTER PROCEDURE [dbo].[Dates_Save]
@Loc VARCHAR(75),
@dates StartEndDateType READONLY  
AS
BEGIN
DECLARE @id int
SELECT @id = MYINTFIELD FROM date_locations
IF @id IS NULL
BEGIN
    INSERT INTO db_recession_bands VALUES (@loc)
    SET @id = @@IDENTITY
END
INSERT INTO db_recession_band_dates VALUES (@id,@dates)      
END
4

1 に答える 1

1

StartEndDateType がユーザー定義のテーブル タイプである場合は、テーブルであるかのように扱います。

これを変える:

INSERT INTO db_recession_band_dates VALUES (@id,@dates)

のようなものに

INSERT INTO db_recession_band_dates (<COLUMN LIST>) -- don't do blind inserts it will hurt you at some point in the future
SELECT @id, <COLUMN LIST>
FROM @dates
于 2013-06-13T20:31:54.837 に答える