22,207
社区成员
发帖
与我相关
我的任务
分享
use test
go
CREATE TABLE tablename
(
a int,
b varchar(20)
)
INSERT tablename SELECT 1,'a'
go
--查询SP
create proc querySearch
@parameter1 varchar(20),
@parameter2 varchar(20)
as
--取消這個表變量
--declare @temptable table
--(
--a int,
--b varchar(20)
--)
--insert into @temptable
EXEC SP_EXECUTESQL N'select * from tablename'
go
--test sp
create proc test_querySearch
@parameter3 varchar(20),
@parameter4 varchar(20)
as
declare @temptable1 table
(
a int,
b varchar(20)
);
insert into @temptable1(a,b)
EXEC SP_EXECUTESQL N'execute querySearch @parameter1=@parameter1,@parameter2=@parameter2',N'@parameter1 varchar(20),@parameter2 varchar(20)',@parameter3,@parameter4
SELECT * FROM @temptable1--顯示結果
go
EXEC querySearch @parameter1=1,@parameter2=2
EXEC test_querySearch @parameter3=1,@parameter4=3
DECLARE @T TABLE(ID INT)
INSERT @T EXEC P
/*服务器: 消息 197,级别 15,状态 1,行 4
无法在向表插入变量时将 EXECUTE 用作源。