ITPub博客

首页 > 数据库 > Oracle > 验证一个052考试题

验证一个052考试题

原创 Oracle 作者:warehouse 时间:2018-07-26 08:49:07 0 删除 编辑

8 、Examine the following statement:

SQL> ALTER TABLE SALES MODIFY CONSTRAINT pk DISABLE VALIDATE; 

Which three statements are true?

A)Rows may be inserted into the table.

B) The PK index is made unusable.

C)The PK index is dropped.

D)The constraint is still enforced for updated rows. 

E)The constraint is still enforced for inserted rows.

Answer:CDE

--=====================

SQL> create table tt(id int primary key) ;

表已创建。

SQL> desc dba_constraints
 名称                                      是否为空? 类型
 ----------------------------------------- -------- ----------------------------
 OWNER                                              VARCHAR2(60)
 CONSTRAINT_NAME                           NOT NULL VARCHAR2(30)
 CONSTRAINT_TYPE                                    VARCHAR2(1)
 TABLE_NAME                                NOT NULL VARCHAR2(30)
 SEARCH_CONDITION                                   LONG
 R_OWNER                                            VARCHAR2(60)
 R_CONSTRAINT_NAME                                  VARCHAR2(30)
 DELETE_RULE                                        VARCHAR2(9)
 STATUS                                             VARCHAR2(8)
 DEFERRABLE                                         VARCHAR2(14)
 DEFERRED                                           VARCHAR2(9)
 VALIDATED                                          VARCHAR2(13)
 GENERATED                                          VARCHAR2(14)
 BAD                                                VARCHAR2(3)
 RELY                                               VARCHAR2(4)
 LAST_CHANGE                                        DATE
 INDEX_OWNER                                        VARCHAR2(30)
 INDEX_NAME                                         VARCHAR2(30)
 INVALID                                            VARCHAR2(7)
 VIEW_RELATED                                       VARCHAR2(14)

SQL> SELECT CONSTRAINT_NAME,CONSTRAINT_type from dba_constraints where table_name='TT';

CONSTRAINT_NAME                C
------------------------------ -
SYS_C006993                    P

SQL> alter table tt modify constraint SYS_C006993 disable validate;

表已更改。

SQL> SELECT CONSTRAINT_NAME,CONSTRAINT_type,status from dba_constraints where table_name='TT';

CONSTRAINT_NAME                C STATUS
------------------------------ - --------
SYS_C006993                    P DISABLED

SQL> SELECT CONSTRAINT_NAME,CONSTRAINT_type,status,validated from dba_constraints where table_name='TT';

CONSTRAINT_NAME                C STATUS   VALIDATED
------------------------------ - -------- -------------
SYS_C006993                    P DISABLED VALIDATED

SQL> SELECT CONSTRAINT_NAME,CONSTRAINT_type,status,validated,index_name from dba_constraints where table_name='TT';

CONSTRAINT_NAME                C STATUS   VALIDATED
------------------------------ - -------- -------------
INDEX_NAME
------------------------------
SYS_C006993                    P DISABLED VALIDATED


SQL> set linesize 120
SQL> SELECT CONSTRAINT_NAME,CONSTRAINT_type,status,validated,index_name from dba_constraints where table_name='TT';

CONSTRAINT_NAME                C STATUS   VALIDATED     INDEX_NAME
------------------------------ - -------- ------------- ------------------------------
SYS_C006993                    P DISABLED VALIDATED

SQL> select index_name from dba_indexes where table_name='TT';

未选定行

SQL> insert into tt values(1);
insert into tt values(1)
*
第 1 行出现错误:
ORA-25128: 不能对带有禁用和验证约束条件 (XYS.SYS_C006993) 的表进行插入/更新/删除


SQL>

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/19602/viewspace-2158795/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2007-12-07

  • 博文量
    717
  • 访问量
    5150238