为了账号安全,请及时绑定邮箱和手机立即绑定

sql.append(" and DESCRIPTION like '%' ? '%'");

sql.append(" and DESCRIPTION like '%' ? '%'");

我用的是Oracle数据库,报错:java.sql.SQLException: ORA-00933: SQL 命令未正确结束

正在回答

3 回答

可以用prepradStatement 的.setXXX(1,变量); 这种形式来写sql  

例如      String sql = "selec id,name from user where id=? and name = ?"

PrepardStatement   ps = cnn.prepardStatement(sql);

ps.setString(1,变量);    // 1标示 第几个?        这句话的意思 是第一个问号的位置 替换变量   

0 回复 有任何疑惑可以回复我~
#1

慕慕7454464

理解错了 如果是oracle 应该直接 like '?' 就ok了 然后在参数 前后个拼接个%
2016-11-17 回复 有任何疑惑可以回复我~

String sql="select * from student st where st.name like '%'||?||'%'";

这样拼接后解决了

0 回复 有任何疑惑可以回复我~

改成 and  description like  '_?_'               _表示任意个字符可以是0个 

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

sql.append(" and DESCRIPTION like '%' ? '%'");

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信