Код SQL дает недопустимый оператор SQL в Java, но он работает в SqlDeveloper - PullRequest
0 голосов
/ 21 ноября 2018

Я пытался сделать crud, но оператор вставки не работает из кода

   try {
        java.sql.Date sqlDate = new java.sql.Date(date.getTime());



        conn2 = DriverManager.getConnection(dbURL2, username, password);

        String sql="INSERT INTO Produce(name,description,Produce_Date,Price,CATEGORY_ID,Person_ID)VALUES('"+name+"','"+description+"',TO_DATE('"+sqlDate+"', 'yyyy-mm-dd'),"+price+","+category_Id+","+person_id+")";

        System.out.println(sql);
        stmt = conn2.createStatement();
        ResultSet rs = stmt.executeQuery(sql);
        while (rs.next()) {
            System.out.println(rs.getString("name"));
        }
        if (conn2 != null && !conn2.isClosed()) {
            conn2.close();
        }

    } catch (SQLException ex) {
        ex.printStackTrace();
    }   

Я сделал System.out.println, чтобы увидеть мой sql и выполнить его, чтобы понять, в чем проблема, этомоя строка, и она работает в sqlDeveloper:

INSERT INTO Produce(name,description,Produce_Date,Price,CATEGORY_ID,Person_ID)VALUES('ew','rrr',TO_DATE('2018-11-14', 'yyyy-mm-dd'),12.0,2,2)

1 Ответ

0 голосов
/ 21 ноября 2018

вы используете запрос вставки SQL для получения результата.

Я полагаю, что для получения имени вам нужно выполнить оператор выбора

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...