- C# code
string sql = "SELECT TOP @Index * FROM [KeyWorkList]"; SqlParameter[] paras = {new SqlParameter("@Index",SqlDbType.Int,4) }; paras[0].Value = 5; DataTable ToDayDt= DBHelper.SelectForDT(sql,paras);
一直报 '@Index' 附近有语法错误。的错误,该怎么写呢?
------解决方案--------------------------------------------------------
1.你这个要 用 存储过程,或 表值函数 了
2.动态 SQL 也可以,
create proc test
(
@Index int
)
as
begion
begion try
DECALER @sqlstr NVARCHAR(1000)
SET @sqlstr ='SELECT TOP '+@Index+' * FROM [KeyWorkList]'
EXEC(@sqlstr)
//sp_executesql 这个也可以
end try
begion catch
return @@error
end catch
end