将默认值传递给Table Valued参数 – SQL Server
发布时间:2020-05-24 08:15:49 所属栏目:MsSql 来源:互联网
导读:我在一个存储过程中使用表值参数.这是我使用的语法: @districtlist NumericList readonly (NumericList是用户定义的表类型). 但是,作为一项要求,我需要将默认值传递给此表值参数. @districtlist NumericList = 0 readonly 但是上面的代码会引发语法错误.是否
|
我在一个存储过程中使用表值参数.这是我使用的语法: @districtlist NumericList readonly (NumericList是用户定义的表类型). 但是,作为一项要求,我需要将默认值传递给此表值参数. @districtlist NumericList = 0 readonly 但是上面的代码会引发语法错误.是否可以将默认值传递给表值参数?有人可以帮我吗? 解决方法您可以选择不传递参数,即使没有为其定义默认值.例如:CREATE TYPE TestTable AS TABLE (my_id INT)
GO
CREATE PROCEDURE dbo.Test_TVP
@my_table TestTable READONLY,@my_int INT
AS
BEGIN
SELECT * FROM @my_table
END
GO
EXEC dbo.Test_TVP @my_int = 2
GO
DROP PROCEDURE dbo.Test_TVP
DROP TYPE TestTable
在这种情况下,表格将为空.如果您想要一些默认行,那么您可能必须在存储过程中模拟它,可能是通过使用临时表,因为表值参数必须是READONLY. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
推荐文章
站长推荐
热点阅读
