这么写带参数的语句错了??

redsunsry 2006-10-25 10:49:42
StringBuilder sql = new StringBuilder();
sql.Append("select * from(select top @ccts");
sql.Append(" * from(select top @endRecord");
sql.Append(" * from Info where gsid = @gsid");
sql.Append(" order by dateandtime desc)");
sql.Append("t1 order by dateandtime)");
sql.Append("t2 order by dateandtime desc");

SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = new SqlCommand(sql.ToString(), con);
SqlParameter pccts = new SqlParameter("@ccts", SqlDbType.Int);
pccts.Value = ccts;
SqlParameter pendRecord = new SqlParameter("@endRecord", SqlDbType.Int);
pendRecord.Value = endRecord;
SqlParameter pgsid = new SqlParameter("@gsid", SqlDbType.Int);
pgsid.Value = gsid;
sda.SelectCommand.Parameters.Add(pccts);
sda.SelectCommand.Parameters.Add(pendRecord);
sda.SelectCommand.Parameters.Add(pgsid);
...全文
95 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
superliu1122 2006-10-25
  • 打赏
  • 举报
回复
用int.Parse()方法把输入转换成整型
superliu1122 2006-10-25
  • 打赏
  • 举报
回复
在构造sql语句的时候直接加进去
sql.Append("select * from(select top ");
sql.Append(ccts);
sql.Append(" * from(select top ");
sql.Append(endRecord);
sql.Append(" * from Info where gsid = @gsid");
sql.Append(" order by dateandtime desc)");
sql.Append("t1 order by dateandtime)");
sql.Append("t2 order by dateandtime desc");
redsunsry 2006-10-25
  • 打赏
  • 举报
回复
我那个值是接受用户输入的 那怎么做才能防止注入? 如何转为数值类型?
superliu1122 2006-10-25
  • 打赏
  • 举报
回复
top后面的数值不能用参数

62,242

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧