一、原题
三、题目解析
详见联机文档oracle对象命令规则:
http://docs.oracle.com/cd/E11882_01/server.112/e41084/sql_elements008.htm#SQLRF00223
四、实验
关于E选项,这里实验如下:
scott用户下,已经有emp表。
Which two statements are true regarding tables? (Choose two.)
A. A table name can be of any length.
B. A table can have any number of columns.
C. A column that has a DEFAULT value cannot store null values.
D. A table and a view can have the same name in the same schema
E. A table and a synonym can have the same name in the same schema.
F. The same table name can be used in different schemas in the same database.
答案: EF
二、题目翻译A. A table name can be of any length.
B. A table can have any number of columns.
C. A column that has a DEFAULT value cannot store null values.
D. A table and a view can have the same name in the same schema
E. A table and a synonym can have the same name in the same schema.
F. The same table name can be used in different schemas in the same database.
答案: EF
关于表哪两个句子是正确的?(选择两个)
A. 表名可以是任意长度的。
B. 表能有任意数量的列。
C. 有DEFAULT值的列不能存储空值。
D. 在相同的schema里,表和视图可以有相同的名字。
E. 在相同的schema里,表和同义词可以有相同的名字。
F. 在相同的数据库不同的schema里,表名可以相同。
A. 表名可以是任意长度的。
B. 表能有任意数量的列。
C. 有DEFAULT值的列不能存储空值。
D. 在相同的schema里,表和视图可以有相同的名字。
E. 在相同的schema里,表和同义词可以有相同的名字。
F. 在相同的数据库不同的schema里,表名可以相同。
三、题目解析
A选项不正确,因为表名的长度为1-30个字符
B选项不正确,因为表的列最多为1000个
C选项不正确,因为有DEFAULT值的列可以存储空值
D选项不正确,因为在相同的schema里,表和同义词的名字不能相同
E在这里说明一个,我使用CREATE SYNONYM建立相同表名字的SYNONYM不成功,但是建立PUBLIC SYNONYM成功,所以这句话算是部分正确。具体实验看下面。
F选项正确,不同的schema,表名可以相同。
B选项不正确,因为表的列最多为1000个
C选项不正确,因为有DEFAULT值的列可以存储空值
D选项不正确,因为在相同的schema里,表和同义词的名字不能相同
E在这里说明一个,我使用CREATE SYNONYM建立相同表名字的SYNONYM不成功,但是建立PUBLIC SYNONYM成功,所以这句话算是部分正确。具体实验看下面。
F选项正确,不同的schema,表名可以相同。
详见联机文档oracle对象命令规则:
http://docs.oracle.com/cd/E11882_01/server.112/e41084/sql_elements008.htm#SQLRF00223
四、实验
关于E选项,这里实验如下:
scott用户下,已经有emp表。
SQL> desc emp
Name Null? Type
----------------------------------------------------------------------------------- -------- -------------
EMPNO NOT NULL NUMBER(4)
ENAME VARCHAR2(10)
JOB VARCHAR2(9)
MGR NUMBER(4)
HIREDATE DATE
SAL NUMBER(7,2)
COMM NUMBER(7,2)
DEPTNO NUMBER(2)
SQL> create synonym emp for emp;
create synonym emp for emp
*
ERROR at line 1:
ORA-01471: cannot create a synonym with same name as object
SQL> create public synonym emp for emp;
Synonym created.
Name Null? Type
----------------------------------------------------------------------------------- -------- -------------
EMPNO NOT NULL NUMBER(4)
ENAME VARCHAR2(10)
JOB VARCHAR2(9)
MGR NUMBER(4)
HIREDATE DATE
SAL NUMBER(7,2)
COMM NUMBER(7,2)
DEPTNO NUMBER(2)
SQL> create synonym emp for emp;
create synonym emp for emp
*
ERROR at line 1:
ORA-01471: cannot create a synonym with same name as object
SQL> create public synonym emp for emp;
Synonym created.