我在两个不同的数据库模式中定义了相同的表类型。当我尝试从一个模式调用 SP 到另一个传递类型作为参数的模式时,我收到以下错误:
“操作数类型冲突 myCustomType 与 myCustomType 不兼容”
我有以下代码:
类型定义
CREATE TYPE myCustomType AS TABLE
(
somevalue INT,
somevalue2 INT
);
存储过程定义
USE DB1
GO
CREATE PROC1(
@myVar myCustomType READONLY
)
AS
BEGIN
EXEC db2.dbo.PROC2 @myVar
END
GO
USE DB2
GO
CREATE PROC2(
@myVar myCustomType READONLY
)
AS
BEGIN
--do something with myVar
END
执行
USE db1
GO
DECLARE @myVar myCustomType
INSERT into @myVar(1,2)
EXEC PROC1 @myVar
我该如何解决这个问题?