SQL Server存储过程中的多个表类型参数

亚历克斯·里兹(Alex Lizz)

是否可以使用多个表值参数调用T-SQL(SQL Server 2012)存储过程?

CREATE Type dbo.P1 AS TABLE 
(
    Id Int NOT NULL,
    Name nvarchar(50) NULL
)

CREATE Type dbo.P2 AS TABLE 
(
    Id Int NOT NULL,
    Name nvarchar(50) NULL
)

CREATE PROCEDURE [dbo].[D]
(
    @id0 Int,
    @P1 dbo.P1 READONLY,
    @P2 dbo.P2 READONLY
)
AS
...

我收到一个错误

必须声明标量变量“ @ P2”

马里

在这种情况下,存储过程可以接受多个参数,并且用户定义的类型参数与SQL Server系统类型参数没有任何不同。

如果仅执行以下代码,它将允许您创建过程而不会出现任何错误,这说明SQL Server确实允许我们创建接受多个用户定义类型参数的过程。

--------------------Test ---------------------------------

CREATE Type dbo.P1 AS TABLE 
(
    Id Int NOT NULL,
    Name nvarchar(50) NULL
)
GO

CREATE Type dbo.P2 AS TABLE 
(
    Id Int NOT NULL,
    Name nvarchar(50) NULL
)
GO

CREATE PROCEDURE [dbo].[D]
(
    @id0 Int,
    @P1 dbo.P1 READONLY,
    @P2 dbo.P2 READONLY
)
AS
BEGIN
 SET NOCOUNT ON;

   SELECT 'Debugging';
END
GO

该错误存在于代码中其他地方,您尝试使用尚未声明的变量。并且由于您已经有一个调用@P2的变量,一旦发现该变量对该变量使用了不同的名称。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在vb.net代码中使用SQL Server存储过程中的OUT参数

来自分类Dev

如何从带有PHP预准备语句的SQL Server存储过程中返回多个结果?

来自分类Dev

使用特定表在存储过程中的Sql Server 2012中重建执行计划

来自分类Dev

在SQL Server存储过程中创建表类型参数

来自分类Dev

在SQL Server 2012中的存储过程中执行多个语句和CTE?

来自分类Dev

在Access中使用SQL Server存储过程中的输出参数

来自分类Dev

SQL Server:在存储过程中将多个列选择到多个变量中

来自分类Dev

在SQL Server中的存储过程中读取xml的问题

来自分类Dev

使用存储过程截断SQL Server中的多个表

来自分类Dev

SQL Server中存储过程中的可选参数

来自分类Dev

如何在SQL Server 2012年的存储过程中动态给表名称

来自分类Dev

在存储过程中的动态SQL中使用临时表

来自分类Dev

如何在vb.net代码中使用SQL Server存储过程中的OUT参数

来自分类Dev

与FREETEXT / FORMSOF一起使用的SQL Server存储过程中的多个引号

来自分类Dev

SQL Server存储过程中的错误

来自分类Dev

在存储过程中创建和使用的SQL Server中的临时表

来自分类Dev

sql server存储过程中的xml参数

来自分类Dev

如何在SQL Server存储过程中创建动态参数

来自分类Dev

在SQL Server中的存储过程中读取xml的问题

来自分类Dev

如何在SQL Server 2012年的存储过程中动态给表名称

来自分类Dev

SQL Server存储过程中的IF条件

来自分类Dev

SQL Server 2008中的存储过程中的数据类型转换错误

来自分类Dev

SQL:在存储过程中显示表的结果

来自分类Dev

在收集我的SQL存储过程中找不到参数?

来自分类Dev

如何在带有多个参数的sql存储过程中传递数据表

来自分类Dev

如何在 SQL Server 2016 存储过程中删除和创建表

来自分类Dev

SQL Server:存储过程中的IF THEN ELSE

来自分类Dev

SQL Server 中存储过程的可选参数

来自分类Dev

SQL Server:从调用其他存储过程的存储过程中捕获临时表

Related 相关文章

  1. 1

    如何在vb.net代码中使用SQL Server存储过程中的OUT参数

  2. 2

    如何从带有PHP预准备语句的SQL Server存储过程中返回多个结果?

  3. 3

    使用特定表在存储过程中的Sql Server 2012中重建执行计划

  4. 4

    在SQL Server存储过程中创建表类型参数

  5. 5

    在SQL Server 2012中的存储过程中执行多个语句和CTE?

  6. 6

    在Access中使用SQL Server存储过程中的输出参数

  7. 7

    SQL Server:在存储过程中将多个列选择到多个变量中

  8. 8

    在SQL Server中的存储过程中读取xml的问题

  9. 9

    使用存储过程截断SQL Server中的多个表

  10. 10

    SQL Server中存储过程中的可选参数

  11. 11

    如何在SQL Server 2012年的存储过程中动态给表名称

  12. 12

    在存储过程中的动态SQL中使用临时表

  13. 13

    如何在vb.net代码中使用SQL Server存储过程中的OUT参数

  14. 14

    与FREETEXT / FORMSOF一起使用的SQL Server存储过程中的多个引号

  15. 15

    SQL Server存储过程中的错误

  16. 16

    在存储过程中创建和使用的SQL Server中的临时表

  17. 17

    sql server存储过程中的xml参数

  18. 18

    如何在SQL Server存储过程中创建动态参数

  19. 19

    在SQL Server中的存储过程中读取xml的问题

  20. 20

    如何在SQL Server 2012年的存储过程中动态给表名称

  21. 21

    SQL Server存储过程中的IF条件

  22. 22

    SQL Server 2008中的存储过程中的数据类型转换错误

  23. 23

    SQL:在存储过程中显示表的结果

  24. 24

    在收集我的SQL存储过程中找不到参数?

  25. 25

    如何在带有多个参数的sql存储过程中传递数据表

  26. 26

    如何在 SQL Server 2016 存储过程中删除和创建表

  27. 27

    SQL Server:存储过程中的IF THEN ELSE

  28. 28

    SQL Server 中存储过程的可选参数

  29. 29

    SQL Server:从调用其他存储过程的存储过程中捕获临时表

热门标签

归档