2013-03-29 3 views
2

Я использую Derby db, и я пытаюсь обновить каждый столбец в одной из моих таблиц.Операция SQL update - попытка обновления всей ошибки таблицы

Я использую следующее заявление:

String stmt = "UPDATE APP.DATAVAULT SET DID = ?, DTITLE = ?, DUNAME = ?, DPASS = ?, DSANSWER = ?, DPIN = ?, DURL = ?, DNOTES = ?, PID = ? WHERE DID = ?, DTITLE = ?, DUNAME = ?, DPASS = ?, DSANSWER = ?, DPIN = ?, DURL = ?, DNOTES = ?, PID = ?"; 

я сделал обновление до того, с помощью следующего оператора:

String stmt = "UPDATE APP.PERSON SET PSNAME = ? WHERE PID = ?"; 

есть более простой способ обновить всю таблицу? Если нет, то что я делаю неправильно с этим утверждением, так как я постоянно получаю следующее сообщение об ошибке:

Syntax error: Encountered "," at line 1, column 137. 

ответ

6

Это

WHERE DID = ?, DTITLE = ?, DUNAME = ?, DPASS = ?, DSANSWER = ?, DPIN = ?, DURL = ?, DNOTES = ?, PID = ? 

должен быть этот

WHERE DID = ? AND DTITLE = ? AND DUNAME = ? AND DPASS = ? AND DSANSWER = ? AND DPIN = ? AND DURL = ? AND DNOTES = ? AND PID = ? 

Так заменить , с AND ,

4

Не более одного предложения должно быть добавлено с AND не с запятой (,). Он должен быть WHERE DID = ? AND DTITLE = ? AND...

2

запятые в вашей ИНЕКЕ должно быть Ands

String stmt = "UPDATE APP.DATAVAULT SET DID = ?, DTITLE = ?, DUNAME = ?, DPASS = ?, DSANSWER = ?, DPIN = ?, DURL = ?, DNOTES = ?, PID = ? WHERE DID = ? AND DTITLE = ? AND DUNAME = ? AND DPASS = ? AND DSANSWER = ? AND DPIN = ? AND DURL = ? AND DNOTES = ? AND PID = ?";

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