[SQLServer]在关键字 'AND' 附近有语法错误 10
Stringsql="selectPROC_ID,PROC_NAME,PROC_SPEC,PROC_GRADE,PROC_BRAND,PROC_NUM,PROC_TO,P...
String sql = "select PROC_ID, PROC_NAME,PROC_SPEC,PROC_GRADE,PROC_BRAND,PROC_NUM,PROC_TO,PROC_SDATE,PROC_EDATE from PROC_PLAN_INFO where 1=1";
if(vo.getPROC_NAME()!=null||!vo.getPROC_NAME().equals("")){
sql+=" AND PROC_NAME="+vo.getPROC_NAME();
}if(vo.getPROC_BRAND()!=null||!vo.getPROC_BRAND().equals("")){
sql+=" AND PROC_BRAND="+vo.getPROC_BRAND();
}if(vo.getPROC_SDATE()!=null||!vo.getPROC_SDATE().equals("")){
sql+=" AND PROC_SDATE="+vo.getPROC_SDATE();
}if(vo.getPROC_EDATE()!=null||!vo.getPROC_EDATE().equals("")){
sql+=" AND PROC_EDATE="+vo.getPROC_EDATE();
}
大家帮忙看下那里出错了 展开
if(vo.getPROC_NAME()!=null||!vo.getPROC_NAME().equals("")){
sql+=" AND PROC_NAME="+vo.getPROC_NAME();
}if(vo.getPROC_BRAND()!=null||!vo.getPROC_BRAND().equals("")){
sql+=" AND PROC_BRAND="+vo.getPROC_BRAND();
}if(vo.getPROC_SDATE()!=null||!vo.getPROC_SDATE().equals("")){
sql+=" AND PROC_SDATE="+vo.getPROC_SDATE();
}if(vo.getPROC_EDATE()!=null||!vo.getPROC_EDATE().equals("")){
sql+=" AND PROC_EDATE="+vo.getPROC_EDATE();
}
大家帮忙看下那里出错了 展开
2个回答
展开全部
sql += " AND PROC_NAME=" + vo.getPROC_NAME();
如果 PROC_NAME 为字符串型,则需要加单引号
应该这样 sql += " AND PROC_NAME= ‘ " + vo.getPROC_NAME() +“ ’ ”;
大概错误在此,你试试
如果 PROC_NAME 为字符串型,则需要加单引号
应该这样 sql += " AND PROC_NAME= ‘ " + vo.getPROC_NAME() +“ ’ ”;
大概错误在此,你试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if (vo.getPROC_NAME() !=null || !vo.getPROC_NAME().equals(""))
{
sql += " AND PROC_NAME=" + vo.getPROC_NAME();
}
// if (vo.getPROC_NAME() != null || !vo.getPROC_NAME().equals(""))
// (vo.getPROC_NAME() != null 与!vo.getPROC_NAME().equals("")
// 之间是或的关系,只要有一个为真该if 语句就将执行
// vo.getPROC_NAME()结果若是"",则前面一个条件为真,if语句执行
// vo.getPROC_NAME()结果若是null, 则后一个条件为真,也将执行
// 所以后面动态链接的WHERE条件语句就可能会出错。
{
sql += " AND PROC_NAME=" + vo.getPROC_NAME();
}
// if (vo.getPROC_NAME() != null || !vo.getPROC_NAME().equals(""))
// (vo.getPROC_NAME() != null 与!vo.getPROC_NAME().equals("")
// 之间是或的关系,只要有一个为真该if 语句就将执行
// vo.getPROC_NAME()结果若是"",则前面一个条件为真,if语句执行
// vo.getPROC_NAME()结果若是null, 则后一个条件为真,也将执行
// 所以后面动态链接的WHERE条件语句就可能会出错。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询