2014-07-21 4 views
0

테스트 환경에서 예상대로 트리거 DDL에 스키마가 추가됩니다. 그러나 QA 및 PROD 환경에서는 스키마 접두어가 DDL에 표시되지 않습니다. 우리는 항상 "SCHEMA"사용자로 연결하여 지금까지 문제가되지 않았습니다. 스키마 접두사를 포함하도록 QA 및 PROD DDL을 업데이트해야할까요? 우리가 "SCHEMA"가 아닌 다른 사용자/스키마로 DB에 연결하지 않는다면, 우리는 정말로 걱정할 것이 있습니까?Oracle SQL Developer는 트리거 DDL에 스키마 이름을 넣지 않습니다.

테스트 DDL :

create or replace TRIGGER "SCHEMA"."MDATA_BIR_TRG" 
       BEFORE INSERT ON "SCHEMA"."METADATA" 
       FOR EACH ROW 
       BEGIN 
        ---CODE HERE. 
       END; 

품질 보증 DDL : 당신이 처리 객체가 정의 스키마에 속하거나하지 않도록하려면

create or replace TRIGGER "MDATA_BIR_TRG" 
        BEFORE INSERT ON "METADATA" 
        FOR EACH ROW 
        BEGIN 
         ---CODE HERE. 
        END; 
+0

각 경우에 개체를 어떻게 작성하고 있으며 출력은 어떻게 받고 있습니까? 이 파일은'dbms_matadata.get_ddl' 파일입니까? –

+0

코드는 Test 및 QA DB에서 수행 한 DDL 내보내기에서 가져온 것입니다. – Green

+2

SQL Developer의 내보내기 마법사를 사용하여 (권한과 2 단계 중 1 단계에서 모든 개체에 사용할 수 있음) 스키마를 포함하거나 제외 할 수있는 확인란이 표시됩니다. –

답변

1

아니, SCHEMA는 옵션 만 필요합니다. "상관하지 않는다"고 항상 사용중인 스키마를 사용하는 경우이를 생략 할 수 있습니다.

2

omeinusch는 스키마 이름이 그다지 중요하지 않다는 점에 동의합니다 (현재 스키마가 오브젝트가 상주하는 스키마와 동일한 경우). 트리거를 다시 컴파일하여 정규화 할 필요가 없습니다.

개체의 DDL을 내보내는 일반적인 방법은 SQL Developer의 내보내기 마법사를 사용하는 것입니다.이 마법사를 사용하면 개체의 DDL이 스키마 한정자인지 여부를 나타낼 수 있습니다.

방향이

  1. enter image description here
  2. 수출의 특성을 선택 수출 연결 탐색기에서 개체에 클릭하고 SQL 개발자 수출 마법사에서 DDL을 얻기 위해 (확인을 선택하여 스키마를 포함한다) enter image description here
  3. 파일 경로가 입력되었는지 확인하십시오.
  4. 다음을 클릭하십시오.
+0

show schema 옵션은 1.5에는 없지만 버전 4에는 있습니다. Thanks Patrick. – Green