想你給得例子隻要這樣改就行了declare @a varchar(255) exec('declare @t varchar(255) out set @t='gg''),@a output print @a
declare @table_exist varchar(255),@sql nvarchar(4000),@DB_NAME varchar(100) set @DB_NAME='test' set @sql='IF EXISTS(SELECT * FROM ['+@DB_NAME+']..SYSOBJECTS WHERE XTYPE=''U'' AND NAME=''TB_BK_WAFER'') set @table_exist=''Y'' else set @table_exist=''N'' ' EXEC sp_executesql @sql,N'@table_exist varchar(255) output',@table_exist output print @table_exist
declare @a varchar(255) exec('declare @t varchar(255) out set @t='gg''),@a outputprint @a
exec('declare @t varchar(255) set @t='+'''gg'''+'select @t')
exec @a=存儲過程名 ' 參數' ---帶return或output型
print @a
-----------------------
或
declare @a varchar(20)exec 存儲過程名 '參數',@a output---裡面帶output型
print
exec('declare @t varchar(255) out
set @t='gg''),@a output
print @a
set @DB_NAME='test'
set @sql='IF EXISTS(SELECT * FROM ['+@DB_NAME+']..SYSOBJECTS WHERE XTYPE=''U'' AND NAME=''TB_BK_WAFER'')
set @table_exist=''Y''
else
set @table_exist=''N''
'
EXEC sp_executesql @sql,N'@table_exist varchar(255) output',@table_exist output
print @table_exist
exec('declare @t varchar(255) out set @t='gg''),@a outputprint @a