关于SQL参数化的问题

我有一个业务是获取最新的几条数据,所以 我写了一个以下的DAL:

public List<SoftMODEL> GetNewList(int intTop,string strOrderBy)
       {
           DataTable table = SqlHelper.ExecuteDataTable("select top @intTop * from T_Soft order by @strOrderBy", new SqlParameter("@intTop", intTop), new SqlParameter("@strOrderBy", strOrderBy));

 

然后我在前台想用bll.GetNewList(7,"LinkID")来调用,但是这样的SQL语句有误,所以不能用。

这个语句应该怎么来写,因为取几条和按什么排序我想在前台页面能控制,不是直接写死在SQL语中。

 

在群上网友给了一个拼接SQL字符串的方法。可行。

那用动态SQL的方法应该怎么写?


Cats萌萌
浏览 517回答 2
2回答

慕的地8271018

"select top (@intTop) * from T_Soft order by @strOrderBy"

慕盖茨4494581

这个写法有什么错误,具体的错误信息
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

SQL Server