我尝试制作 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)
最佳答案
您正在使用插入 SQL 查询来检索结果。
我相信要检索名称,您需要执行 select 语句
关于java - Sql 代码在 Java 中给出无效的 SQL 语句,但在 SqlDeveloper 中有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53409286/