기존의 오라클 데이터베이스 시스템 (10g)에서 작업 중이며 자세한 스키마 정보가 없습니다. 테이블의 특정 레코드를 삭제하면 다른 테이블에서 계단식 삭제가 발생하는지 알아야합니다. 트리거를 확인했습니다. 그러나, 나는 참조 제약 때문에 계단식에 대해 확신하지 못합니다. 이것을 식별 할 수있는 간단한 방법이 있습니까?오라클은 삭제가 캐스케이드 될 것인지 확인합니다.
2
A
답변
8
당신이 알고있는 (또는 확인할 수) 관련된 외래 키 제약 조건 (들)을 가정 할 때, 당신은 당신에게 특정 참조하는 모든 외래 키 제약 조건을 표시합니다 DBA_CONSTRAINTS
SELECT constraint_name, delete_rule
FROM dba_constraints
WHERE r_constraint_name = <<name of the primary key constraint>>
AND r_owner = <<owner of the primary key constraint>>
AND delete_rule = 'CASCADE'
에서 DELETE_RULE
열을 볼 수 있습니다 기본 키 제약 조건은 삭제를 계단식으로 배열합니다. 부모 행이 삭제 될 때 SET NULL
을 수행 할 제약 조건에 신경 쓰면 delete_rule
이 SET NULL
인 행을 찾을 수 있습니다.
DBA_CONSTRAINTS
테이블에 대한 권한이없는 경우 SELECT
권한이있는 테이블에만 실제로 관심이 있다고 가정하고 ALL_CONSTRAINTS
을 대신 사용할 수 있습니다.
관련 문제
- 1. ravendb에서 캐스케이드 삭제가 가능합니다
- 2. Coredata, 캐스케이드 삭제가 작동하지 않습니다.
- 3. MySQL 캐스케이드 삭제가 작동하지 않습니다.
- 4. 최대 절전 모드 캐스케이드 삭제가 작동하지 않음
- 5. FluentNHibernate와 유효한 캐스케이드 삭제가 양 끝에서 삭제됩니까?
- 6. 최대 절전 모드 캐스케이드 삭제가 작동하지 않습니다.
- 7. cakephp 3.x 캐스케이드 삭제가 작동하지 않습니다.
- 8. IP가 정적이거나 DHCP의 DHCP에서 얻은 것인지 확인합니다.
- 9. 클릭 이벤트 소스가 thead에서 오는 것인지 확인합니다.
- 10. 언제 메모리를 해제 할 것인지 확인합니다
- 11. httpServeltRequest가 모바일 또는 웹에서 제공된 것인지 확인합니다.
- 12. 들어오는 호출이 응답 그룹에 대한 것인지 확인합니다.
- 13. 요청이 바이러스 백신에서 오는 것인지 확인합니다.
- 14. 윌. 엔티티 프레임 워크를 제거하면 기본적으로 캐스케이드 삭제가 수행됩니다.
- 15. MySQL 외래 키 캐스케이드 삭제가 작동하지 않고 완전히 엉망진창이되었습니다.
- 16. SSD에 쓰기/삭제가 반복 될 위험이 있습니까?
- 17. 오라클은
- 18. 오라클은
- 19. 오라클은
- 20. 오라클은
- 21. 오라클은
- 22. 오라클은
- 23. 포커스가 키 누르기 또는 클릭으로 인한 것인지 확인합니다.
- 24. 캐스케이드
- 25. 캐스케이드
- 26. 캐스케이드 삭제 기능이 켜져 있습니까?
- 27. 인증은 페이지가 다시로드 될 때마다 확인합니다.
- 28. 가입 오라클은
- 29. 오라클은 : 행
- 30. 오라클은 11g
내가 늙어 가고있는 것 같아요 - 10g는 이제 유산입니까? – haki