Вставить данные с вложенным запросом в Java Netbean [решено] - PullRequest
0 голосов
/ 28 мая 2020

Я хочу вставить данные, в которых данные в JAVA GUI отображались как «product_name», когда я вставлял базу данных «product_name», автоматически вставлял бы так называемый ключ id, поэтому я решил попробовать создать вложенный запрос в SQL YOG / MYSQL отлично работает на SQLYOG / MYSQL. Но когда я помещаю запрос в исходный код netbean и пытаюсь нажать кнопку добавления после вставки всего поля, появится сообщение об ошибке «не удается выполнить операторы обработки данных с помощью executeQuery ()». Что я пропустил?

Запрос:

INSERT INTO buy (id_sup,id_product,price,date) 
VALUES ((SELECT id_sup FROM supplier WHERE name_sup='Wattshituya'), (SELECT id_product FROM barang WHERE name_product='Bucatti'), 200000,NOW());

Исходный код в Netbean:

 private void add_buy() {                                           
        try {
            Connection kon = koneksi.koneksiDb();
            Statement st = kon.createStatement();
            String sql = "INSERT INTO buy (id_sup,id_product,price,date) VALUES ((SELECT id_sup FROM supplier WHERE name_sup='"+comboboxSup.getSelectedItem()+"'),(SELECT id_product FROM product WHERE name_product='"+comboboxProd.getSelectedItem()+"'),"
                    + "'"+txt_price.getText()+"','"+txt_date.getText()+"')";
            ResultSet rs = st.executeQuery(sql);
            JOptionPane.showMessageDialog(null, "Saved");
        } catch (Exception e) {
            JOptionPane.showMessageDialog(this, e.getMessage());
        }
        table_pembelian();
        reset_formPem();
    }

ОБНОВЛЕНИЕ РЕШЕНО

это требует простого изменения моего исходного кода, с

ResultSet rs = st.executeQuery(sql);

должно быть

ResultSet rs = st.executeUpdate(sql);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...