或者 SET @SQL = N'Select * from ' + @PageTable + ' where ID= '+cast(@ID as varchar(10)) EXEC SP_EXECUTESQL @SQL
这里,where里只用到了一个@ID,但如果是多个条件,也就是说多个参数呢?再问,谢谢
Create Procedure MyTest @PageTable varchar(256), @ID int AS DECLARE @SQL VARCHAR(8000) SET @SQL='Select * from '+@PageTable+' where ID='+cast(@ID as varchar(10)) exec( @SQL)
delcare @id int SET @SQL = N'Select * from ' + @PageTable + ' where ID=@I and xx=@j' EXEC SP_EXECUTESQL @SQL,N'@i int,@j varchar(10)',@id,@j或: Create Procedure MyTest @PageTable varchar(256), @ID int, @j varchar(100) AS DECLARE @SQL VARCHAR(8000) SET @SQL='Select * from '+@PageTable+' where ID='+cast(@ID as varchar(10))+' and xx='''+@j+'''') exec( @SQL)
SET @SQL = N'Select * from ' + @PageTable + ' where ID= '+cast(@ID as varchar(10))
EXEC SP_EXECUTESQL @SQL
@PageTable varchar(256),
@ID int
AS
DECLARE @SQL VARCHAR(8000)
SET @SQL='Select * from '+@PageTable+' where ID='+cast(@ID as varchar(10))
exec( @SQL)
EXEC SP_EXECUTESQL @SQL,N'@i int,@s varchar(10)....',@id,@ss.....
SET @SQL = N'Select * from ' + @PageTable + ' where ID=@I and xx=@j'
EXEC SP_EXECUTESQL @SQL,N'@i int,@j varchar(10)',@id,@j或:
Create Procedure MyTest
@PageTable varchar(256),
@ID int,
@j varchar(100)
AS
DECLARE @SQL VARCHAR(8000)
SET @SQL='Select * from '+@PageTable+' where ID='+cast(@ID as varchar(10))+' and xx='''+@j+'''')
exec( @SQL)