0

例如,我有一个表 GAME 和 PRICE,然后我有一个名为 FPS_PRICE 的 MQT,它是使用以下语句创建的:

SELECT A.GAMENAME, B.GAMEPRICE
  FROM GAME A, PRICE B 
  WHERE A.GAMEID=B.GAMEID 
    AND A.GAMETYPE='FPS';

如果表 GAME 或 PRICE 被删除...... MQT FPS_PRICE 是否也会被删除?

(我会自己测试一下,但我没有相关数据库的管理员访问权限)

谢谢!

4

2 回答 2

2

直接来自信息中心

所有索引、主键、外键、检查约束、 具体化查询表和引用该表​​的临时表都将被删除。引用该表的所有视图和触发器均无效。(这包括在 CREATE TRIGGER 语句的 ON 子句中引用的表以及在触发的 SQL 语句中引用的所有表。)依赖于任何已删除或标记为无效的对象的所有包都将失效。这包括依赖于层次结构中子表之上的任何超表的包。将删除的表定义为引用范围的任何引用列都变为无范围的。

于 2013-08-05T02:25:50.960 回答
0

防止它被删除的方法是使用简单的 CREATE TABLE 来制作它,而不是使其成为物化表。

于 2013-08-05T11:42:07.873 回答