sql代码引发的问题
写了一段sql,但一直报缺失 右括号.请朋友们帮我看看,谢谢了sql="select q.* from (select rowNum n,t.* from (" +
"select * from book_lend c where " +
" c.bookName like'%"+query+"%' " +
" or c.author like'%"+query+"%' " +
"or c.press like'%"+query+"%' or to_char(c.appearYear,'yyyy-mm-dd') like '%"+query+"%' ) t "
+currentYear+"' order by auto_id ) q "
+"where q.n>" + Snt + " and q.n<=" + Cnt; --------------------编程问答-------------------- 需求再明确一下撒,是哪里报错?执行sql时报错,还是编辑器提示报错,我表示没看懂 --------------------编程问答-------------------- 多拆分成几行,尤其有括弧的地方。 --------------------编程问答-------------------- 看看是不是这里多了引号:
"' order by auto_id--------------------编程问答-------------------- 是编辑器里报错,朋友,谢谢了 --------------------编程问答--------------------
String sql = "select q.* from (select rowNum n,t.* from ("--------------------编程问答-------------------- 这就是细心的问题!!!
+ "select * from book_lend c where "
+ " c.bookName like '%"+ query + "%'"
+ " or c.author like '%" + query + "%'"
+ " or c.press like '%" + query+ "%'"
+ " or to_char(c.appearYear,'yyyy-mm-dd') like '%" + query+ "%' ) t " + currentYear + "' order by auto_id ) q"
+ " where q.n>" + Snt + " and q.n<=" + Cnt;
--------------------编程问答-------------------- 以后提问是自己粗心造成的,自动扣自己10分 --------------------编程问答--------------------
这里少了半边单引号 --------------------编程问答--------------------
select q.* from (select rowNum n,t.* from ( select * from book_lend c where
c.bookName like '% query %' or c.author like'% query %' or c.press like
'%query%' or to_char(c.appearYear,'yyyy-mm-dd') like '%query%' ) t
currentYear' order by auto_id ) q where q.n> Snt and q.n<= Cnt;
你替换一下少了什么?明显少了括号 --------------------编程问答-------------------- 括弧去哪里了?兄弟? --------------------编程问答-------------------- OR 条件不要用括号的? 那作用能一样? --------------------编程问答-------------------- jf//... --------------------编程问答-------------------- 语句长了要加别名 在你提示确实右括号的右边加别名 --------------------编程问答-------------------- 好像是 右括号后面的那个 别名应该与你的那个右括号有空格 --------------------编程问答-------------------- 这种问题 楼主一句sysout就可以解决了。。 --------------------编程问答-------------------- 好玩。嘿嘿。 --------------------编程问答-------------------- 再有此类问题,拿到运行时的sql语句,运行一下就知道原因咯
补充:Java , Java EE