여기에서 문제는 데이터베이스의 상위 관리 계층을 만드는 ArcGIS라는 응용 프로그램을 사용하고 사용자가 ArcGIS를 사용하여 데이터베이스에 새 객체를 만들 때 기본값을 추가한다는 것입니다. (0)을 기본 키에 추가하므로 두 번째 객체가 만들어지면 중복 값을 갖는 ORA 오류가 트리거됩니다.삽입 후 자동 증가 트리거
내 생각에 우리의 PK에 대한 자동 증가 트리거를 만드는 대신 AFTER INSERT를 사용했습니다. 나는이 특정 사건에 대한 온라인 어떤 예를 찾을 단순히 AFTER로 전 전환하는 것은 내가 뭘하려의
AFTER SQL 코드 NEW를 사용할 수 없다는 오류를 제공 할 수 없습니다 (다른 질문에서 가져온) :CREATE OR REPLACE TRIGGER "IMOVEL_TRIGGER"
after insert on IMOVEL
for each row
begin
select IMOVEL_SEQ.nextval into :NEW.GEOCODIGO_IMOVEL from dual;
end;
그것은 캔트 응용 프로그램이, 내가 필요한 것은이 시퀀스 .nextval에 PK를 업데이트 INSERT 트리거, 후에는하지 않는 것입니다 단순화 그것을
을 덮어 쓰기 때문에하는 BEFORE INSERT 트리거를 수 OLD 또는 : NEW를 사용하여 무엇을해야하는지 확신 할 수 없습니다. 만든 후에서만 실행 또는 갱신 트리거는
이것은 단지 당신 만 BEFORE 트리거에 :NEW
값을 변경할 수 있습니다이 문제
A는, 우리가 사용하고있는 응용 프로그램이 – Mojimi
이는 ArcGIS에 대한 지원 문제 같은 소리 덮어 씁니다. 나는 ArcGIS를 모른다. 그래서 나는 그것을 도울 수 없다. 미안하다. –
그래, 우리가 수동으로 오라클에서 아무것도하지 않아야하기 때문에 그들은 그것을 버그라고 생각하지 않는다. 나는 그것을 우회 할 방법이 있는지 궁금하다. – Mojimi