QUESTION 94
Examine the following statement that is used to modify the primary key constraint on the SALES table:
SQL> ALTER TABLE SALES MODIFY CONSTRAINT pk DISABLE VALIDATE;
Which three statements are true regarding the above command? (Choose three.)
A. The constraint remains valid.
B. The index on the constraint is dropped.
C. It allows the loading of data into the table using SQL *Loader.
D. New data conforms to the constraint, but existing data is not checked.
E. It allows the data manipulation on the table using INSERT/UPDATE/DELETE SQL statements.
Correct Answer: ABC
参考:
http://docs.oracle.com/cd/E11882_01/server.112/e41084/clauses002.htm#i1002038
约束条件状态
为了更好地处理数据可能暂时违反约束条件的情况,可将约束条件指定为不同的状态。可以启用(ENABLE) 或禁用(DISABLE) 完整性约束条件。
如果启用约束条件,在数据库中输入或更新数据时就会检查数据。此时,禁止输入不符合约束条件规则的数据。
如果禁用约束条件,则可以在数据库中输入不符合规则的数据。
完整性约束条件可处于以下一种状态:
? DISABLE NOVALIDATE:不检查新数据和现有数据,因此这些数据可能不符合约束条件。当数据来自验证过的源,而且表是只读表时,通常会使用此状态。因此,不会将新数据输入表中。在已清理了数据的数据仓库环境中使用NOVALIDATE。此时不需要进行验证,因而可以节省很多时间。
? DISABLE VALIDATE:如果约束条件处于此状态,则不允许对有约束条件的列进行任何修改。因为如果在验证现有数据后,又允许将未经检查的数据输入表中,就会出现不一致的情况。通常,在必须验证现有数据但不进行修改时,以及不需要索引来提高性能时,可使用此状态。
? ENABLE NOVALIDATE:新数据符合约束条件,但现有数据处于未知状态。通常在确信表中只存在纯净数据和符合规则的数据的情况下使用该状态,此时不需要进行验证。但是,不允许将违反规则的新数据输入到系统中。
? ENABLE VALIDATE:新数据与现有数据均符合约束条件。这是约束条件的典型状态和默认状态。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/81227/viewspace-2098468/
,如需转载,请注明出处,否则将追究法律责任。