PreparedStatement работает нормально, если запрос является статическим (без параметров), например:JDBC PreparedStatement не работает в JSP
select * from RWEMP;
, но если я использую ниже код условия поиска:
SELECT * FROM RWEMP WHERE ENAME= ?
Он ничего не показывает, он просто показывает заголовки таблиц.
<FORM METHOD="get"> <INPUT TYPE="text" NAME="cond" SIZE=50> </FORM> <br> <br> <% String value = request.getParameter("cond"); if (value != null) { %> <H3> Search results for <I> <%= value %> </I> </H3> <% } %> <%@page import="java.sql.*" %> <%Class.forName("oracle.jdbc.driver.OracleDriver"); String sql="SELECT * FROM RWEMP WHERE ENAME= ?"; Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","hari","root"); PreparedStatement stat=con.prepareStatement(sql); stat.setString(1,"value"); ResultSet rs=stat.executeQuery(); try { if(rs!=null) { %> <table border=1 cellspan=60 cellpadding=16> <tr> <th> Emp ID </th> <th> Emp Name </th> <th> Emp Dept </th> <th> Emp Area </th> <th> Emp D.O.B </th> <th> EMP Mobile </th> <th> Emp Salary </th> <th> EMP Wife </th> </tr> <% while(rs.next()) { %> <tr> <td><%= rs.getString("EID")%> </td> <td><%= rs.getString("ENAME") %> </td> <td><%= rs.getString("EDEPT")%> </td> <td><%= rs.getString("EAREA")%> </td> <td><%= rs.getString("EDOB")%> </td> <td><%= rs.getString("EMOBILE")%> </td> <td><%= rs.getString("ESAL")%> </td> <td><%= rs.getString("ESPOUSE")%> </td> </tr> <% } } } catch(SQLException e) { e.printStackTrace(); } con.close();
%>
0
A
ответ
3
Изменение параметров запроса кода связывания ваших PreparedStatement
«ы, как
stat.setString(1, value); // no quotes
Вам нужно искать на то, что содержит переменную value
, а не по его имени «значение».
+0
Спасибо, чувак ....> – hari
+0
Добро пожаловать, Хари. –
Смежные вопросы
- 1. PreparedStatement не работает, т.е. ps.executeUpdate() в JSP
- 2. Почему DataSource не работает с PreparedStatement в JSP?
- 3. JDBC PreparedStatement throws NullPointerException
- 4. PostgresSQL query_to_xml в JDBC PreparedStatement
- 5. JDBC PreparedStatement странное поведение
- 6. Создание JDBC SQL в PreparedStatement
- 7. JDBC партии с PreparedStatement не работает в MySQL
- 8. JDBC PreparedStatement Объединив для Scala
- 9. MySQL JDBC closeOnCompletion не влияет на PreparedStatement
- 10. JDBC PreparedStatement с шестнадцатеричными литералами
- 11. Java - Derby - JDBC - NullPointerException PreparedStatement
- 12. Невозможно использовать запрос LIKE в JDBC PreparedStatement?
- 13. JDBC PreparedStatement с надписью "?" в имени столбца
- 14. Java PreparedStatement RETURN_GENERATED_KEYS не работает
- 15. PreparedStatement и setTimestamp в Oracle JDBC
- 16. Проблема с вопросительным знаком в jdbc PreparedStatement
- 17. Неправильный индекс столбца в JDBC PreparedStatement
- 18. JSP не загружая драйвер JDBC
- 19. JDBC INSERT не работает
- 20. JSP + JDBC issue
- 21. JDBC PreparedStatement: Как добавить композитный тип
- 22. JDBC PreparedStatement, пакетное обновление и сгенерированные ключи
- 23. MySQL и JDBC PreparedStatement с помощью Select
- 24. JDBC PreparedStatement, UNION Выбор и передача параметров
- 25. JDBC PreparedStatement Batch продолжает вставлять на ошибках
- 26. Oracle JDBC PreparedStatement Игнорировать трейлинг-пространства
- 27. Java/JDBC - Поиск нескольких параметров с использованием JDBC PreparedStatement
- 28. Java PreparedStatement Wilcard не работает
- 29. JDBC mysql не поддерживает заполнитель LIMIT в PreparedStatement?
- 30. JDBC PreparedStatement, как выбрать и вставить?
Несвязанный, но: не помещайте SQL-код в JSP, особенно не получая соединение. Для этого используйте пул соединений. JSP должен ** только ** содержать код презентации, никогда не Java-код и абсолютно никогда не SQL-код. –