2011-07-26 1 views
1

종속 뷰가 "작동 불능"으로 표시되지 않고 다른 뷰에 영향을 미치는 테이블/뷰를 어떻게 수정할 수 있습니까?보기가 "작동 불능"으로 표시되는 것을 피하려면?

우리는 DB2 9.5 LUW를 실행 중입니다. 나는 문을 트랜잭션을 사용하여 피 CREATE OR REPLACE하는 방법, 및 기타 조치도 있습니다 그가 말하는 Find a list of views marked inoperative,

Leons Petrazickis '블로그 게시물을 읽었습니다.

9.7의 새로운 기능을 사용할 수 없으므로 나는 Leons가 언급 한 다른 방법을 자세히 설명 할 누군가가 필요합니다. IBM Data Studio에서 실행되는 예제는 훌륭합니다.

답변

3

DB2 9.7에서 "CREATE OR REPLACE"기능이 추가되었습니다. 이전에 뷰를 작동하지 않는 것으로 표시하지 않으려면 뷰 아래의 객체를 변경하기 전에 뷰를 삭제하고 이후의 뷰를 다시 만드는 것이 유일한 방법입니다.

또는 뷰의 종속 오브젝트를 변경하지 마십시오. :-)

+0

그가 거래를 제안 할 때 Leons가 무엇을 언급했는지 알기 원하십니까? – brandong

+1

그는 사용자가 SQL0575N 오류를 보지 못하게하는 방법을 언급하고 있습니다. 이것은 DB2가 오브젝트를 유효하지 않은 것으로 표시하는 것을 방지하지 않습니다. 단일 트랜잭션 내에서 DDL을 변경하면 다른 쿼리는 DDL 트랜잭션이 커밋 될 때까지 시스템 카탈로그의 잠금을 차단합니다. –