既存のDB2テーブルにビューを作成してから、そのテーブルをドロップした場合。ビューはどうなりますか?
Rohan
質問する
7056 次
4 に答える
1
ビューが無効/操作不能になります。そこから選択しようとすると失敗します。
それを試すには:
create table TEST_TABLE (
TEST_COL INTEGER
);
INSERT INTO TEST_TABLE VALUES(1);
SELECT * FROM TEST_TABLE;
create view TEST_VIEW AS
SELECT * FROM TEST_TABLE;
SELECT * FROM TEST_VIEW;
DROP TABLE TEST_TABLE;
SELECT * FROM TEST_VIEW;
最後のステートメントでエラーが発生します。
[IBM][CLI Driver][DB2/NT] SQL0575N View or materialized query table
"TEST_VIEW" cannot be used because it has been marked inoperative.
SQLSTATE=51024
于 2009-03-13T15:31:55.433 に答える
0
上記の例に示されているように、ビューが無効化されると、DB2 では、最初にそのビューをドロップすることなく、そのビューを再作成することができます。これにより、ビュー DDL ファイルを再実行できます (または単に SYSCAT.VIEWS の TEXT 列をダンプして実行します)。
于 2009-06-18T03:31:45.417 に答える