当前位置:首页 > oracle笔试题
EMP表 列名称 Empno Ename Job Mgr Hiredate Sal Comm Deptno ? ? ? ? ? ? ? ? ? ?
EMP表 列名称 Deptno Dname Loc 定义 NUMBER(2) VARCHAR2(14) VARCHAR2(13) 定义 NUMBER(4),PK VARCHAR2(10) VARCHAR2(9) NUMBER(4) DATE NUMBER(7,2) NUMBER(7,2) NUMBER(2),FK Empno—-Employee Ename—-Employee Name Job—-Job Title
Mgr—-Manager of Employee Hiredate—-Hire date Sal—-Salary(每月) Comm—-Commission(销售) Deptno—-Department Number Dname—-Department Name Loc—-Location of Operation
1.下面哪一个SQL语句将创建一个只包含部门30的员工数据的新表? A.CREATE TABLE ee30
AS (SELECT * FROM emp WHERE deptno = 30); b.CREATE TABLE ee30,//此处不应该写?,? AS (SELECT * FROM emp WHERE deptno = 30);
c.CREATE TABLE (SELECT * FROM emp WHERE deptno = 30);//没有新建的表名,明显错误
d.CREATE TABLE 30department
AS (SELECT * FROM emp WHERE deptno = 30);//表名不能以数字开头 答案:(A)
2.下面哪一个SQL语句将删除DEPT表中的所有行并释放这些行占用的存储空间? a.DROP TABLE dept;//删除整个表 b.DELETE FROM dept;//删除所有的行
c.TRUNCATE TABLE dept;//删除所有行,并释放这些行占用的存储空间 d.DELETE *.* FROM dept;//错误语句
答案:(C)
Truncate table 在功能上和不带where字句的delete语句相同:二者均为删除表中全部行。但是truncate table 比delete速度要快,而且使用系统和事物日志资源少。
Delete语句每次删除一行,并在事物日志中为所删除的行记录一项。Truncate table通过释放存储表数据所用的数据页来删除数据,并且只在事物日志中记录页的释放。
3.下面那一个SQL语句将向EMP表添加一个名为SSN的数字列?
a.ALTER TABLE emp MODIFY (add SSN NUMBER (9));//增加列不需要关键字modify b.ALTER TABLE emp ADD (SSN NUMBER (9);//右括号缺失 c.ALTER TABLE emp MODIFY (SSN NUMBER (9));//缺少关键字ADD d.ALTER TABLE emp ADD( SSN NUMBER (9)); 答案:(D)
Modify是修改的意思,比如修改数据类型是需要使用这个关键字。而增加列名,或者是删除列,不需要使用此关键字。
Alter table emp add ssn char(9);//增加列 Alter table emp drop column ssn;//删除列
4.下面哪一个SQL语句将DEPT表的名称更改为DEPARTMENT? a.ALTER TABLE dept RENAME AS department; b.RENAME TO department FROM dept; c.RENAME dept TO department; d.RENAME dept AS department; 答案:(C)
给表重命名用rename.
5.下面哪些说法是正确的?选出所有正确的答案. a.以后不能回收标记为未使用的列,也不能清除其标记;
b.在删除一列时,可以通过使用ROLLBACK命令恢复这一列的内容; c.在删除一列时,不能通过使用ROLLBACK命令恢复这一列的内容; d.以后可以回收标记为未使用的列或者清除其标记; 6.下面哪一个SQL语句将向DEPT表中添加一个新部门? a.UPDATE dept
SET deptno = 65,dname = ‘HR’,loc = ‘SEATTLE’; b.INSERT VALUES (65,HR,SEATTLE) INTO dept; c.INSERT INTO dept VALUES (65,HR,SEATTLE); d.这些SQL语句都不会向表添加一个新部门; 答案:(C)
用表中插入新数据用insert into 表名 values()//插入数据跟别的列数相同
7.下面哪些说法是正确的?选出所有正确的答案.
a.要想确保将一个员工指派到DEPT表中现有的一个部门,在DEPT表上必须存在一个FOREIGN KEY 约束;
b.要想确保将一个员工指派到DEPT表中现有的一个部门,在EMP表上必须存在一个FOREIGN KEY 约束;
c.要想确保将一个员工指派到DEPT表中现有的一个部门,在DEPT表上必须存在一个NOT NULL约束;
d.要想确保将一个员工指派到DEPT表中现有的一个部门,在EMP表上必须存在一个UNIQUE约束;
共分享92篇相关文档