【发布时间】:2020-06-19 15:44:29
【问题描述】:
我有以下存储过程并创建了一个自定义类型,然后将表作为参数提供给我的存储过程以更新我的目标表:
-- Create Type
CREATE TYPE dbo.e2m_dt AS TABLE
(
[ID] BIGINT,
[text] VARCHAR(max)
)
-- Create Procedure:
CREATE PROCEDURE MERGE_REQUEST_RESULT
@temp_table dbo.e2m_dt READONLY
AS
UPDATE Table1
SET ID = @temp_table.ID,
text = @temp_table.text
FROM Table1
INNER JOIN @temp_table ON Table1.ID = @temp_table.ID
GO
但我收到以下错误:
消息 137,级别 16,状态 1,过程 MERGE_REQUEST_RESULT,第 9 行
必须声明标量变量“@temp_table”。消息 137,级别 16,状态 1,过程 MERGE_REQUEST_RESULT,第 10 行
必须声明标量变量“@temp_table”。消息 137,级别 16,状态 1,过程 MERGE_REQUEST_RESULT,第 16 行
必须声明标量变量“@temp_table”。
我是 SQL 的新手,任何帮助将不胜感激。
【问题讨论】:
标签: sql-server stored-procedures