次のJDBCステートメントを使用して、JavaからOracleDBにいくつかの値を挿入しようとしています。
String SQL_PREP_INSERT = "INSERT INTO ABC.TEST (LOG_ID, SESSION_ID,USER_ID) VALUES"
+ " (ABC.logid_seq.nextval, ?, ?)";
stmt = con.prepareStatement(SQL_PREP_INSERT);
stmt.setString(1, sessionId);
stmt.setString(2, userid);
stmt.execute();
stmt.close();
シーケンスは次のように作成されます。
create sequence ABC.logid_seq
minvalue 1 maxvalue 9999999999999999999999
increment by 10 start with 10 cache 20 noorder nocycle ;
次のエラーが発生します。
java.sql.SQLException: ORA-00942: table or view does not exist
しかし、手動でテーブルに挿入しようとすると、成功します。
insert into ABC.test(LOG_ID,SESSION_ID,USER_ID) values
(VZPPTL.logid_seq.nextval,'test_session', '001');
どうしたの?