код Java / SQL, вставка в postgres

1

Я попытался вставить эти данные в свою таблицу в postgres, но я получаю эту ошибку: ERROR: синтаксическая ошибка в или рядом с "левым". Ниже приведена моя вставка и следующие параметры...

public static void Add(int i, int p) throws SQLException{
    String path = p + "/";

    st = "INSERT INTO melvin_ifis_network (link_id, length, area, up_area, elevation, links_drop, longest_channel_length, to_border, left, right, parent_link, travel_time07, layer, ial, ia_connected, h_order, ia_outlet, branch_layer, memory, branch, model) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
    state = connection.prepareStatement(st);
    state.setInt(1, i);
    state.setInt(2, 0);
    state.setInt(3, 0);
    state.setInt(4, 0);
    state.setInt(5, 0);
    state.setInt(6, 0);
    state.setInt(7, 0);
    state.setInt(8, 0);
    state.setInt(9, 0);
    state.setInt(10, 0);
    state.setInt(11, p);
    state.setDouble(12, 0.0);
    state.setInt(13, 0);
    state.setBoolean(14, true);
    state.setBoolean(15, true);
    state.setInt(16, 0);
    state.setBoolean(17, false);
    state.setInt(18, 0);
    state.setInt(19, 0);
    state.setInt(20, 0);
    state.setBoolean(21, true);
    state.executeUpdate();
}
Теги:

2 ответа

1
Лучший ответ

Вы получаете эту ошибку, потому что left, right - резервное слово. Вам придется избегать их, используя двойную кавычку " " как "left" и "right"

2

leftright) является зарезервированным словом. Вы должны процитировать это: "left"

Более подробную информацию о правилах об идентификаторах см. В руководстве: http://www.postgresql.org/docs/current/static/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS

Ещё вопросы

Сообщество Overcoder
Наверх
Меню