oracle 拼装字符串 传入存储过程 查询无数据
if (dt != null && dt.Rows.Count > 0)
{
foreach (DataRow dr in dt.Rows)
{
getid += "'" + dr["TypeID"] + "',";
}
}
getid = getid.Remove(getid.LastIndexOf(","), 1);
return getid;
以上就是方法的核心代码,调用存储过程传参数,这个执行,查询没有数据,如果在调试的时候把这个返回的字符串直接写入存储过程参数位置 查询就有数据,不晓得为什么 谁晓得
[解决办法]
是不是参数传递的时候 多拼装了一层双引号啊
楼主可以试着把传递之前和传递之后的参数打印出来看看
语言和数据库转换的时候 系统有可能会默认增加一层双引号的
我的异常网推荐解决方案:oracle存储过程,http://www.myexception.cn/oracle-develop/177537.html