2013-03-27 2 views
0

Когда я пытаюсь обновить запись таблицы, как показано ниже я получаю сообщение об ошибкеОбновление строки таблицы Mysql с помощью Java

Метода - 1:

String jsonText = "{"id":100,"nickname":"yash","name":"Rahul"}" 
Statement st3 = con.createStatement(); 
st3.executeUpdate("UPDATE comment SET c_wt ="+c_newwt+",c_Jsonwt ="+jsonText+" WHERE c_id="+c_id); 

И, когда я сделать это таким образом он получает обновленную

Метод - 2:

Statement st3 = con.createStatement(); 
st3.executeUpdate("UPDATE comment SET c_wt ="+c_newwt+",c_Jsonwt ="+"'{"id":100,"nickname":"yash","name":"Rahul"}'"+" WHERE c_id="+c_id); 

Мне нужно, чтобы таблица обновляется с помощью метода 1. Может ли один пожалуйста s ольве моя проблема? Благодарю.

+2

"* Когда я пытаюсь обновить запись таблицы, как показано ниже, et ошибка * ". Тогда, пожалуйста, включите полную стеклу! – mre

+2

Ваша строка не хорошо отформатирована в первом методе. –

+0

Это может показаться глупым, но вы должны иметь точку с запятой в конце этой первой строки? Кроме того, как упоминалось, это не очень хорошо отформатировано. Java на самом деле не моя сильная сторона. –

ответ

1

Вы не используете JSON с "" в SQL, используйте ниже. Кроме того, необходимо, чтобы избежать "меток в формате JSON и добавить точку с запятой в строку декларации

String jsonText = "{\"id\":100,\"nickname\":\"yash\",\"name\":\"Rahul\"}"; 
Statement st3 = con.createStatement(); 
st3.executeUpdate("UPDATE comment SET c_wt ="+c_newwt+",c_Jsonwt ='"+jsonText+"' WHERE c_id="+c_id); 
+0

это работа вмятина! – yAsH

+0

Как вы относитесь к работе «dint» - вы получили сообщение об ошибке? – david99world

+0

"" + jsonText + "" -> эта работа, но "+ jsonText +" 'работал :) – yAsH

1

Существует несколько недостающих цитат: '"+jsonText+"'

st3.executeUpdate("UPDATE comment SET c_wt ="+c_newwt+",c_Jsonwt ='"+jsonText+"' WHERE c_id="+c_id); 
0

Я хотел бы предложить что-то вроде

String jsonText = "{\"id\":100,\"nickname\":\"yash\",\"name\":\"Rahul\"}"; 
Statement st3 = con.createStatement(); 
st3.executeUpdate("UPDATE comment SET c_wt ="+c_newwt+",c_Jsonwt =\""+jsonText+"\" WHERE c_id="+c_id); 

Похоже, что много котировок нужно ускользать.

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