我创建了一个表值类型, 这是好的。
CREATE TYPE [ContactTemplate] AS TABLE (
[Email] VARCHAR(100),
[FirstName] VARCHAR(50),
[LastName] VARCHAR(50)
)
GO
然后,当我尝试创建一个程序时:
CREATE PROCEDURE [dbo].[usp_ProcessContact]
( @Email VARCHAR(100),
@FirstName VARCHAR(50),
@LastName VARCHAR(50),
@Contact ContactTemplate READONLY)
as
Begin
-------
End
我一直在
收到错误@Contact ContactTemplate READONLY" The parameter @Contact cannot
be declared READONLY since it is not a table valued parameter
我尝试了很多东西,删除了dbo
,括号等,仍然无法让它发挥作用。请帮助..
答案 0 :(得分:11)
试试这个:编辑 - >智能感知 - >刷新本地缓存 - 如果您刚刚定义了表类型,则您的符号表还不知道它。或者,创建类型,退出SSMS,然后重新打开。