我一直在尝试使用以下参数将不同的值作为 sql 查询传递:
SELECT TOP 5 *
FROM Events
WHERE EID NOT IN (SELECT TOP @limit EID FROM Events ORDER BY EID)
用于查找参数值指定的前 n 行之后的记录@limit
。
例如,如果我指定值 10,则查询返回第 6-10 行。
现在我正在做的是
string str = "SELECT TOP 5 * FROM Events WHERE EID NOT IN (SELECT TOP @limit EID FROM Events ORDER BY EID)"
SqlCommand cmd=new SqlCommand(str,con); // con is the connection string
cmd.Parameters.AddWithValue("limit", value);
SqlDataAdapter sda= new SqlDataAdapter(cmd);
DataSet ds=new DataSet();
sda.Fill(ds);
return ds;
然后将数据集ds
绑定到一个Datalist
.
目前抛出一个错误说
“@limit 附近的语法不正确”
代码有什么问题..?