【发布时间】:2016-04-07 13:36:23
【问题描述】:
这是我开始写的存储过程 问题是我不知道如何处理从 TV par 读取值的部分:
必须声明表变量“@TestMultiActionViaRowIndexTVPar”。
ALTER Proc [dbo].[MultiActionViaRowIndexSpTVP]
@SelectedSDTOName varchar (50), @SelectedAction varchar(10), @TestMultiActionViaRowIndexTVPar dbo.TestMultiActionViaRowIndexTVType READONLY
as BEGIN
declare @CmdStr varchar(500) = '';
if(@SelectedAction = 'SELECT') Begin --test for one of the "Action" types
SET @CmdStr = 'SELECT * FROM ' + @SelectedSDTOName +
' WHERE RowIndex in (SELECT RowIndex FROM @TestMultiActionViaRowIndexTVPar)'
End
--else - other Action - @CmdStr will be according to action...
--finally execute constructed Cmdstr
Exec(@CmdStr);
END
【问题讨论】:
标签: sql-server stored-procedures sql-server-2012 dynamic-sql table-valued-parameters