如下代码:
string guidStr=request.form.get("guidstr");//通过form递交的guid串
//类似36C269F4-87E6-486F-9052-1114DC558A11,DEFC3D34-DABA-41C1-98E4-2B32859DA34E
string[] guids=guidStr.split(',');//按逗号分隔成数组stringbuilder guidList=new stringbuilder();//拼接
foreach(string guid in guids){
if(guidList.length>0)guidList.append(",'"+guid+"'");
else guidList.append("'"+guid+"'");
}
//变成'36C269F4-87E6-486F-9052-1114DC558A11','DEFC3D34-DABA-41C1-98E4-2B32859DA34E'string sqlStr="select field1,field2 from [table] where guid in (@guidList)";SqlParameter[] paras = new SqlParameter[]{
new SqlParameter("@guidList",SqlDbType.VarChar,2000)
};
paras[0].Value = guidList.toString(); SqlServerHandler.ExecuteSql(sqlStr, paras)...
//.....上面的参数化处理执行有误,应该怎么修改?
如果不用参数化,拼接是可以执行的,但不是我想要的,
string sqlStr="select field1,field2 from [table] where guid in ("+guidList.toString()+")";(数据库中guid列是UniqueIdentifier类型的,guid串如何在In函数中作参数化处理?)
string guidStr=request.form.get("guidstr");//通过form递交的guid串
//类似36C269F4-87E6-486F-9052-1114DC558A11,DEFC3D34-DABA-41C1-98E4-2B32859DA34E
string[] guids=guidStr.split(',');//按逗号分隔成数组stringbuilder guidList=new stringbuilder();//拼接
foreach(string guid in guids){
if(guidList.length>0)guidList.append(",'"+guid+"'");
else guidList.append("'"+guid+"'");
}
//变成'36C269F4-87E6-486F-9052-1114DC558A11','DEFC3D34-DABA-41C1-98E4-2B32859DA34E'string sqlStr="select field1,field2 from [table] where guid in (@guidList)";SqlParameter[] paras = new SqlParameter[]{
new SqlParameter("@guidList",SqlDbType.VarChar,2000)
};
paras[0].Value = guidList.toString(); SqlServerHandler.ExecuteSql(sqlStr, paras)...
//.....上面的参数化处理执行有误,应该怎么修改?
如果不用参数化,拼接是可以执行的,但不是我想要的,
string sqlStr="select field1,field2 from [table] where guid in ("+guidList.toString()+")";(数据库中guid列是UniqueIdentifier类型的,guid串如何在In函数中作参数化处理?)
解决方案 »
- EXTJS TreePanel 当前选择节点改变的事件
- url重写,后CSS奇怪的问题
- 兄弟们快来 帮我 ,对XML精通的 来 ·~~
- |M| 我们都知道DataGrid,GridView都有DataKey属性用来存储关键字,现在我用Repeater用什么来做主键
- DataList中如何显示存储于数据表的图片。
- label真是搞怪呀,帮忙看看吧,好像很简单的问题
- 请教 真正的大型网站,是代码 behind的,还是写在html中的?
- 急:在线问JSP调用ASPX页刷新的问题
- 弱弱的问一下:用友的华表,e表之类的,真的有水晶报表好用吗?
- 为什么我的OE不能收发E-MAIL,在设置上有什么技巧
- 求一个正则
- ASP.NET购物网站
where guid in (@guid1,@guid2,@guid3……);
历遍guidlist逐个添加SqlParameter
多一个循环而已,
而且,楼主有没有想过,Sql字串的8k限制,是一个参数名长?还是guid长呢?