2
次のコードを実行しているときに、次のエラーが発生しています。原因:java.sql.SQLSyntaxErrorException:ORA-01747:無効なuser.table.column、table.column、または列の指定
public Consent insert(Consent c) {
PreparedStatement ps = null;
try {
ps = conn.prepareStatement(
"INSERT INTO KIT.CONSENT (tr_number, customer, id_data, user, fk_user) "
+ "VALUES (?, ?, ?, ?, ?)",
new String[] { "ID" });
ps.setString(1, c.getTr_number());
ps.setString(2, c.getCustomer());
ps.setString(3, c.getId_data());
ps.setString(4, c.getUser());
ps.setInt(5, c.getFk_user());
ps.executeUpdate();
ResultSet rs = ps.getGeneratedKeys();
while(rs.next()){
int id = rs.getInt(1);
c.setId(id);
}
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e);
}
エラー:
によって引き起こさ:java.sql.SQLSyntaxErrorException:ORA-01747:無効なuser.table.column、table.columnまたは列指定このコードは、MySQL上で動作
が、 Oracleでは次のエラーが発生します
列名として予約語を使用することは推奨されません、そのユーザーは、Oracleの予約語で、列名の – Mottor
はい男を使用すべきではありません。ユーザーのためにOracleの予約語です。問題は解決した。 – Musa