오라클 질문이요. 0 2 771

by ekekekek [Oracle 기초] [2018.07.03 16:04:35]


안녕하세요.

select를 해온값을 다른 db의 table에 insert를 하려는 작업을 하려고합니다.

다른 테이블 접속 권한을 줘서 1번 db 워크시트에서 

1번 db명(db1) 테이블명(table1)

2번 db명(db2) 테이블명(table2) 시퀀스명(table2_seq)

select db2.table2_seq.nextval
from dual;  을 입력하면 db2의 table2_seq 시퀀스의 nextval값이 정상적으로 출력이됩니다.

그러나 insert문에서 

INSERT INTO db2.table2(
column1,
column2,
column3
)values(
db2.table2_seq.nextval,
'1',
'2'
)

을 입력하면 values에서 시퀀스 nextval 부분쪽이 시퀀스가 존재하지않는다며 ORA-02289 가 출력이됩니다.

제가..어떤점을 잘못하고있는건가요?

 

 

by 아발란체 [2018.07.03 16:08:55]

같은 session, 같은 사용자인가요?

말 그대로 스퀀스를 못 찾는 것 같은뎅... 권한 문제가 아닐까영? @.@)/


by ekekekek [2018.07.03 16:13:24]

테이블에 대한 권한을 주면 시퀀스 권한도 같이 주어지는줄 알았는데

시퀀스에대한 권한도 줬어야됬네요... 감사합니다.

 

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입