Итак ... Я хочу удалить строку из базы данных с помощью JTable, но я не знаю, почему она не удаляется, может быть, синтаксис УДАЛЕНИЕ isntruction неправильно ...Я не могу удалить из базы данных SQL, используя JTable
borrar.addActionListener(new ActionListener()
{
public void actionPerformed(final ActionEvent e)
{
System.out.println(tabla_proveedor.getSelectedRow());
if (tabla_proveedor.getSelectedRow()!=-1){
id_borrado=datos_proveedor[tabla_proveedor.getSelectedRow()][0];
System.out.println(id_borrado);
try{
Statement st = conexion.createStatement();
st.executeUpdate("DELETE FROM `boticaebenezer`.`proveedores` WHERE `proveedores`.`id_proveedor` = id_borrado;'");
System.out.println("Se borró");
}
catch (SQLException s){
System.out.println("SQLException: " + s.getMessage());
System.out.println(s.getErrorCode());
}
}
}
});
Обновлена моя программа, как это, и это ошибка, я получаю от улова.
SQLException: У вас есть ошибка в синтаксисе SQL; проверьте руководство, которое соответствует версии сервера MySQL для правильного синтаксиса, чтобы использовать рядом с «»»в строке 1
Я не знаю, как оценить, если id_proveedor имеет такое же значение, как струнный id_borrado
Редактировать: найдено решение, реальный sitnaxis был: st.executeUpdate; ('+ id_borrado + ";" "DELETE FROM boticaebenezer
proveedores
ГДЕ proveedores
id_proveedor
=.."')
Благодаря всей вашей помощи :)
Mmm, теперь он отображает System.out.println («Se borró»); Правильно, но все равно не удалите строку, не могли бы вы проверить sintaxis? – Adrian
Я бы подумал удалить цитаты вокруг 'id_proveedor', если это имя вашего столбца. –
Я отредактировал вопрос с обновленным кодом, чтобы узнать, помогает ли он больше, я пробовал кавычки и ничего. – Adrian