2012-05-02 6 views
-2
Connection conn = null; 
conn = DriverManager.getConnection("jdbc:mysql://localhost/madb?&user=root&password=root"); 
PreparedStatement ps = 
     conn.prepareStatement("SELECT * FROM mytable WHERE url IS NULL"); 

Я получаюSELECT * FROM туЬаОго WHERE URL IS NULL Синтаксис исключение ошибки

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: У вас есть ошибку в синтаксисе SQL; проверьте руководство, которое соответствует вашей версии сервера MySQL для правильного синтаксиса, чтобы использовать рядом с «нулевым» в строке 1

Как я могу это сделать с помощью JDBC и MySQL?

+1

он работает с поисковым браузером – myro

+1

Очевидные вещи для двойной проверки: (1) Неверная база данных? (2) Запрос, который вы показываете, - это не запрос, который терпит неудачу? – NPE

+2

Почему вы используете 'PreparedStatement', нет переменных для замены в том, что вы публикуете? –

ответ

2

Я не вижу причин, по которым этот запрос не удался, особенно учитывая, что он работает в браузере запросов.

Вот некоторые возможности, которые могли бы объяснить поведение:

  1. код подключается к неправильной базе данных.
  2. Вы ищете неправильный запрос (т. Е. Это другой запрос, который фактически не работает). Обратите внимание, как сообщение об ошибке имеет слово null в нижнем регистре, тогда как запрос имеет его в верхнем регистре. Это выглядит подозрительно.
  3. Код Java, который вы показываете, - это не тот код, который вы используете (например, из-за неудачного развертывания).
+0

Ничего из этого ... – myro

+0

Это также может быть неправильный код! Код, который по какой-то причине не был развернут. – adarshr

+0

@ada rshr: Хорошая точка. Ответ обновлен. Благодаря! – NPE

Смежные вопросы