第二章选择

本文涵盖数据库操作的基础知识,如修改表结构添加主键约束,数据的回滚与提交,SQL查询语句的使用,以及事务处理和表的操作,包括数据的删除与更新。内容涉及ALTERTABLE命令,ROLLBACK与COMMIT,SELECT语句的函数应用,以及事务的ACID特性等。
摘要由CSDN通过智能技术生成

第二章 数据库操作

选择:

1、你需要修改 STUDENTS 表在STUDENT_ID列上增加一个PK约束,当前此表为空表,下面语句正确的是?

A. ALTER TABLE students ADD PRIMARY KEY student_id;

B. ALTER TABLE students ADD CONSTRAINT PRIMARY KEY (student_id);

C. ALTER TABLE students ADD CONSTRAINT stud_id_pk PRIMARY KEY student_id;

D. ALTER TABLE students ADD CONSTRAINT stud_id_pk PRIMARY KEY (student_id);

正确答案是: D    你选择的答案是:未选     判题结果:×

2、下列哪类命令在未提交前可以通过ROLLBACK命令进行回退( )

A. DCL

B. DDL

C. DML

D. DQL

正确答案是: C    你选择的答案是:未选     判题结果:×

3、评估SQL语句:                                                

SELECT ROUND(45.953, -1) FROM dual;

该语句的显示结果?

A. 46         B. 45.93

C. 50         D. 45.9

正确答案是: C    你选择的答案是:未选     判题结果:×

4、(  )函数通常用来计算累计排名、移动平均数和报表聚合等。

A.汇总    B.分析    C.分组    D.单行

正确答案是: A    你选择的答案是:未选     判题结果:×

5、(  )SQL语句将为计算列SAL*12生成别名Annual Salary

A.SELECT ename,sal*12 ‘Annual Salary’ FROM emp;

B.SELECT ename,sal*12 “Annual Salary” FROM emp;

C.SELECT ename,sal*12 AS Annual Salary FROM emp;

D.SELECT ename,sal*12 AS INITCAP(“Annual Salary”) FROM emp;

正确答案是: A    你选择的答案是:未选     判题结果:×

6、分析以下的SQL命令:

SELECT 图书.书号,图书.书名,借阅.读者号 FROM 借阅 RIGHT JOIN 图书 ON 图书.书号=借阅.书号

如下描述正确的是(   )。

A 将没借书的读者信息也查出来       B 只查出被借走的图书信息

C 将没被借走的图书信息也查出来    D 只查出被借走图书的书号和书名

正确答案是: C    你选择的答案是:未选     判题结果:×

7、评估SQL语句:SELECT ename, sal, 12*sal+100 FROM emp;

Sal 列存储的是月薪,现在要求查询语句能够显示 每月增加100元补贴后的年薪,上面的语句如何更改?

A. 不需要做任何修改

B. SELECT ename, sal, 12*(sal+100) FROM emp;

C. SELECT ename, sal, (12*sal)+100 FROM emp;

D. SELECT ename, sal+100,*12 FROM emp;

正确答案是: B    你选择的答案是:未选     判题结果:×

8、用于显示表结构的命令是什么?

A. DESC    B. HOST  C. SELECT  D. DIR

正确答案是: A    你选择的答案是:未选     判题结果:×

9、下列SELECT语句用于查询表中email列为空值的行,哪个是正确的?

A. SELECT ename,sal,email from emp where email = 0;

B. SELECT ename,sal,email from emp where email =’ ’;

C. SELECT ename,sal,email from emp where email is null;

D. SELECT ename,sal,email from emp where email is not null;

正确答案是: C    你选择的答案是:未选     判题结果:×

10、关于约束,下列哪些描述是正确的?()

A. UNIQUE约束不允许空值

B. 在创建PK或UNIQUE 约束时默认会同进创建唯一性索引

C. PK 约束允许列中有一个空值

D. NOT NULL约束是确保列中会出现空值

正确答案是: B    你选择的答案是:未选     判题结果:×

11、CREATE,DROP,ALTER等命令属于下列哪类命令( )

A. DCL

B. DDL

C. DML

D. DQL

正确答案是: B    你选择的答案是:未选     判题结果:×

12、INSERT,UPDATE,DELETE等命令属于下列哪类命令( )

A. DCL

B. DDL

C. DML

D. DQL

正确答案是: C    你选择的答案是:未选     判题结果:×

13、评估SQL语句

SELECT ROUND(TRUNCATE(MOD(1600,10),-1),2) FROM dual;语句执行完成后的结果是?

A. 0    B. 1   C. 0.00   D. 发生错误

正确答案是: A    你选择的答案是:未选     判题结果:×

第三章 数据表操作

选择:

1、若需要更新居住地为亚特兰大 (Atlanta) 的雇员的区域代码。考虑下面的部分 UPDATE 语句:

UPDATE 雇员  SET 区域代码 = 770

应在 UPDATE 语句中包括以下哪个子句才能得到所需结果?

A. UPDATE 城市 = Atlanta;      B.  SET 城市 = 'Atlanta';  

C. WHERE 城市 = 'Atlanta';      D.  LIKE 'At%';

正确答案是: C    你选择的答案是:未选     判题结果:×

2、MySql数据库中,下面( )可以作为有效的列名。

A.  Column

B.  123_NUM

C.  NUM_#123

D.  #NUM123

正确答案是: C    你选择的答案是:未选     判题结果:×

3、MySql数据库中,以下(  )命令可以删除整个表中的数据,并且无法回滚。

A.   drop

B.   delete

C.   truncate

D.   cascade

正确答案是: C    你选择的答案是:未选     判题结果:×

4、若MySql设置默认提交方式为手动提交,第一步用DELETE命令删除了表A中的数据(但并没有提交),

第二步试图创建了一个表B,但由于权限不足,表B并没有创建成功.

第三步执行了一个ROLLBACK回滚操作.请问以下叙述正确的是( )

A. 表A中的数据被恢复回来

B. 表A中的数据被彻底从数据库中删除

C. 表A中的数据被移至一个临时的表中

D. 表A中的数据将处于一个不确定的状态

正确答案是: A    你选择的答案是:未选     判题结果:×

5、若MySql设置默认提交方式为手动提交,第一步执行了DELETE命令,删除了某表中的一条记录.第二步执行了COMMIT命令.

最后又执行了ROLLBACK命令.请问以下叙述正确的是( )

A. 被删除的记录又被恢复回来,仍然存放在数据库的表中

B. 被删除的记录彻底从数据库中被删除掉了

C. 被删除的记录只是当前用户看不到了,而其它用户还能看到

D. 被删除的记录当前用户可以看到,而其它用户却看不到了

正确答案是: B    你选择的答案是:未选     判题结果:×

6、若MySql设置默认提交方式为手动提交,第一步用DELETE命令删除了表A中的数据(但并没有提交),第二步成功创建了一个表B,

第三步执行了一个ROLLBACK回滚操作.请问以下叙述正确的是( )

A. 表A中的数据被恢复回来,创建的表B被从数据库中被删除,恢复为未建表之前的状态

B. 表A中的数据被恢复回来,表B被创建在数据库中.

C. 表A中的数据被彻底从数据库中删除,但表B被从数据库中被删除,恢复为未建表之前的状态

D. 表A中的数据被彻底从数据库中删除,表B被创建在数据库中.

正确答案是: B    你选择的答案是:未选     判题结果:×

7、若想要修改一个表的结构,应该用以下哪个命令( )

A. ALTER TABLE

B. DEFINE TABLE

C. MODIFY TABLE

D. REBUILD TABLE

正确答案是: A    你选择的答案是:未选     判题结果:×

8、以下对于事务的叙述,比较全面的是( )

A. 事务中的操作是一个整体,要成功都成功,要失败都失败

B. 事务可以把所操作的数据库由一个状态转变到另一个状态

C. 事务在提交之前,其它事务看不到它对数据库的影响

D. 以上所述都是正确的

正确答案是: D    你选择的答案是:未选     判题结果:×

9、对于MySql数据库,设计用户表时,家庭住址字段最好采用下面的哪个数据类型进行存储

A. CHAR

B. CHAR2

C. VARCHAR

D. VARCHAR2

正确答案是: C    你选择的答案是:未选     判题结果:×

10、假定有一张表用户表users,其中一身份证字段ID_card。为了维护数据的完整性,在设计数据库时,最好对ID_card字段添加约束,请问应该添加什么约束(  )

A.primary key B.check   C.default  D.not null

正确答案是: A    你选择的答案是:未选     判题结果:×

11、以下哪个选项不是有效的MySql约束类型?(    )

A. UNIQUE                   B.NONUNIQUE

C. CHECK                    D.PRIMARY KEY

正确答案是: B    你选择的答案是:未选     判题结果:×

12、有数据”test”分别存放到char(10)和varchar2(10)类型的字段中,其实际存储长度为

A. 10     10    B. 4    4    C. 10     4    D. 4     10

正确答案是: C    你选择的答案是:未选     判题结果:×

13、关于表的主键,说法正确的是( )。

A. 主键字段最多只能建立在一个字段上

B. 主键字段的值可以重复

C. 主键字段的值能为Null

D. 主键字段的值不能重复

正确答案是: D    你选择的答案是:未选     判题结果:×

13、以下哪个命令是DDL命令( )

A. CREATE

B. INSERT

C. COMMIT

D. SELECT

正确答案是: A    你选择的答案是:未选     判题结果:×

15、以下关于列的叙述中,哪一项是不正确的?

A. 可以增大 CHAR 列的宽度。

B. 如果列包含非空数据,则可以修改列的数据类型。

C. 可以将 CHAR 数据类型的列转换为 VARCHAR2 数据类型。

D. 可以将 DATE 日期类型的列转换为 VARCHAR2 列。

正确答案是: B    你选择的答案是:未选     判题结果:×

16、如果需要更新 6 月 30 日之前生产的产品的有效期。应在 UPDATE 语句的哪个子句中指定这一条件?

A. ON 子句   B. WHERE 子句    C. SET 子句      D. USING 子句

正确答案是: B    你选择的答案是:未选     判题结果:×

17、MySql数据库中,取余数的运算符是()。

A. %        B. mod       C. /           D.

正确答案是: A    你选择的答案是:未选     判题结果:×

18、下面哪个命令不属于数据操纵语言(DML)(    )

A.ALTER…     

B.INSERT…

C.UPDATE…     

D. Delete…

正确答案是: A    你选择的答案是:未选     判题结果:×

19、使用哪个命令可以从表的行中删除所有数据而不删除表自身?

A. ALTER TABLE       B.  DROP TABLE   C. MODIFY        D. DELETE FROM

正确答案是: D    你选择的答案是:未选     判题结果:×

20、以下哪项陈述最符合此 SQL 语句中“学生”表发生的变化?

UPDATE 学生

SET 午餐编号 =  (SELECT 午餐编号    FROM 学生   WHERE 学生标识 = 17 )

WHERE 学生标识 = 19;

A. 此语句将更新“学生”表,具体操作为将标识号为 19 的学生的午餐编号替换为标识号为 17 的学生的午餐编号。  

B. 将一个新行插入“学生”表中。  

C. 不发生任何变化,因为不能在 UPDATE 语句中使用子查询。  

D. 删除学生 17 的午餐编号,并根据学生 19 的午餐编号插入一个新值。

正确答案是: A    你选择的答案是:未选     判题结果:×

21、删除emp表中所有数据,且可以rollback,以下语句哪个命令可以实现( )

A. truncate table emp

B. drop table emp

C. delete * from emp

D. delete from emp

正确答案是: D    你选择的答案是:未选     判题结果:×

22、哪个命令用来创建一个primary key constraint  pk_books 在表 BOOKS, 列 ISBN上? 请选择一个。

A. create primary key on books(ISBN);

B. create constraint pk_books primary key on books(ISBN);

C. alter table books add constraint pk_books primary key (ISBN);

D. alter table books add primary key (ISBN);

正确答案是: C    你选择的答案是:未选     判题结果:×

23、以下哪个命令是DCL命令( )

A. CREATE

B. INSERT

C. COMMIT

D. GRANT

正确答案是: D    你选择的答案是:未选     判题结果:×

第四章 查询操作

选择:

1、应使用以下哪个组函数来显示“雇员”表中的最高薪金值?

A. AVG    B.  COUNT    C.  MAX    D. MIN

正确答案是: C    你选择的答案是:未选     判题结果:×

2、转换日期类型为字符串的转换函数是( )。

A. to_date    B. to_datetime   C. to_char    D. to_number

正确答案是: C    你选择的答案是:未选     判题结果:×

3、下列正确查询姓张的学生的语句是( )。

A. select * from 表名 where 姓名 = ‘张’

B. select * from 表名 where 姓名 like ‘张%’

C. select * from 表名 where 姓名 = ‘%张%’

D. select * from 表名 where 姓名 like ‘张’

正确答案是: B    你选择的答案是:未选     判题结果:×

4、查询出EMP表中1982年及以后入职的员工信息(注:字段hiredate为入职日期,数据类型为DATE型)

A. select * from emp where hiredate>='19820101';

B. select * from emp where hiredate>=to_char('19820101','YYYYMMDD');

C. select * from emp where to_date(hiredate,'YYYYMMDD')>='19820101';

D. select * from emp where to_char(hiredate,'YYYYMMDD')>='19820101';

正确答案是: A    你选择的答案是:未选     判题结果:×

5、在PL/SQL中用以下哪个运算符或函数,可以将两个字符串连接起来

A. strcat

B. +

C. ||

D. stradd

正确答案是: C    你选择的答案是:未选     判题结果:×

6、emp表是雇员信息表,sal字段存放是的雇员的月薪

以下哪个变量可以存放sal类型的值

A. v_sal emp%rowtype;

B. v_sal emp.sal%type;

C. v_sal emp.sal.%type;

D. v_sal %type(emp.sal);

正确答案是: B    你选择的答案是:未选     判题结果:×

7、emp表是雇员信息表,以下哪个变量可以存放emp表中的一条记录

A. v_record emp%type;

B. v_record emp%recordtype;

C. v_record emp%record_type;

D. v_record emp%rowtype;

正确答案是: D    你选择的答案是:未选     判题结果:×

8、下面四个语句中哪一个是正确的?(    )

A.SELECT * , ENAME FROM EMP;

B.DELETE * FROM EMP;

C.SELECT DISTINCT EMPNO ,HIREDATE FROM EMP;

D.SELECT ENAME|SAL AS “name” FROM EMP ;

正确答案是: C    你选择的答案是:未选     判题结果:×

9、下列哪个是组合主键的特征(    )

A.每列有唯一的值,但不是NULL值

B.组合有唯一的值,并且其中每列没有NULL值

C.组合的第一列和最后一列有唯一值

D.组合的第一列和最后一列有唯一值,但没有NULL值

正确答案是: B    你选择的答案是:未选     判题结果:×

10、以下 SQL 语句将返回什么结果?

SELECT  COUNT(DISTINCT 薪金)  FROM 雇员;

A.  雇员表中所有唯一薪金的列表      B.   雇员表中的薪金总额

C.  雇员表中的总行数                D. 雇员表中的唯一薪金的数量

正确答案是: D    你选择的答案是:未选     判题结果:×

11、在Oracle中,有一个教师表teacher的结构如下:

ID NUMBER(5)

NAME VARCHAR2(25)

EMAIL VARCHAR2(50)

下面哪个语句显示没有Email地址的教师姓名()。

A.SELECT name FROM teacher WHERE email = NULL;

B.SELECT name FROM teacher WHERE email <> NULL;

C.SELECT name FROM teacher WHERE email IS NULL;

D.SELECT name FROM teacher WHERE email IS NOT NULL;

正确答案是: C    你选择的答案是:未选     判题结果:×

12、关于通配符中的“%”,以下说法正确的两项是( )。

A. 代表任意一个字符,与Like结合使用

B. 代表任意多个字符,与Like结合使用

C. 代表任意一个字符,在Like后的表达式中只能使用一次“%”

D. 代表任意多个字符,在Like后的表达式中不可以使用多次“%”

正确答案是: B    你选择的答案是:未选     判题结果:×

13、查询出所有名字以'S'开始的员工( )

A. select * from emp where ename in 'S%';

B. select * from emp where ename='S%';

C. select * from emp where ename like 'S%';

D. select * from emp where ename like 'S_';

正确答案是: C    你选择的答案是:未选     判题结果:×

14、语句SELECT * FROM dept WHERE NOT EXISTS (SELECT * FROM emp WHERE deptno=dept.deptno)执行后的结果为(    )

A.只显示存在于EMP表中的部门全部信息。

B.只显示不存在于EMP表中的部门全部信息

C.未返回任何数据

D.显示DEPT表中的全部信息

正确答案是: B    你选择的答案是:未选     判题结果:×

15、在Oracle中,下面用于限制分组函数的返回值的子句是()。

A.WHERE

B.HAVING

C.ORDER BY

D.无法限定分组函数的返回值

正确答案是: B    你选择的答案是:未选     判题结果:×

16、对于以下SQL语句说法正确的是

SELECT ename FROM emp

WHERE sal IN (SELECT MAX(sal)  

FROM emp GROUP BY deptno);

A. 这个语句是符合语法的

B. 这个语句是不能执行的,因为缺少HAVING子句

C. 这个语句是不能执行的,因为分组的条件列不在SELECT列表中

D. 这个语句是不能执行的,因为GROUP BY子句应该在主查询中,而不是在子查询中

正确答案是: A    你选择的答案是:未选     判题结果:×

17、(    )子句用于列出唯一值。

A.unique      B.distinct      C.order by      D.group by

正确答案是: B    你选择的答案是:未选     判题结果:×

18、下面哪一个语句可以使用子查询(    )

A.SELECT 语句              B.UPDATE语句   

C.DELETE语句              D.以上都是

正确答案是: D    你选择的答案是:未选     判题结果:×

19、列出EMP表中,从事每个工种(JOB)的员工人数( )

A. select job from emp;

B. select job,count(*) from emp;

C. select distinct job,count(*) from emp;

D. select job,count(*) from emp group by job;

正确答案是: D    你选择的答案是:未选     判题结果:×

20、查询出EMP表中COMM字段为空的记录( )

A. select * from emp where comm='';

B. select * from emp where comm=null;

C. select * from emp where nvl(comm)=0;

D. select * from emp where comm is null;

正确答案是: D    你选择的答案是:未选     判题结果:×

21、哪一个是子查询执行的顺序(    )

A.最里面的查询到最外面的查询

B.最外面的查询到最里面的查询

C.简单查询到复杂查询

D.复杂查询到简单查询

正确答案是: A    你选择的答案是:未选     判题结果:×

22、数据库中有两个用户scott和myuser,物资表wz是属于myuser用户的,但当前用户是scott,要求查询物资表wz(wno,wname,wtype,wunit)物资单位wunit列为null的记录,取结果的前5条记录显示,以下正确的SQL语句是(     )

A.select*from scott.wz where wunit is null and rownum<5;

B.select*from myuser.wz where wunit = null and rownum<5;

C.select*from myuser.wz where wunit is null and rownum<6;

D.select*form scott.wz where wunit is null and rownum<6;

正确答案是: C    你选择的答案是:未选     判题结果:×

23、 要求查询物资表wz(wno,wname,wtype,wunit)物资单位wunit列为null的记录,取结果的前5条记录显示,以下正确的SQL语句是(     )

A.select * from wz where wunit is null limit 0,5;

B.select * from wz where wunit = null limit 0,5;

C.select * from wz where wunit is null limit 1,5;

D.select * form wz where wunit = null limit 1,5;

正确答案是: A    你选择的答案是:C     判题结果:×

24、使用以下哪个函数可返回月份中的最大日期?

A. END_DAY    B.  FINAL_DAY   C.  HIGHEST_DAY       D. LAST_DAY

正确答案是: D    你选择的答案是:未选     判题结果:×

25、要统计某表中记录的总个数,以下哪项是正确的SQL语句(  )。

A. select Max(*) from 表名

B. select Sum(*) from 表名

C. select Count(*) from 表名

D. select Min(*) from 表名

正确答案是: C    你选择的答案是:未选     判题结果:×

26、查询出当前的数据库系统时间,精确到秒( )

A. select to_date(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

B. select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

C. select date(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

D. select chr(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

正确答案是: B    你选择的答案是:未选     判题结果:×

27、 查询出当前的日期,可以用下面哪个选项( )

A. select curdate();

B. select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

C. select date(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

D. select chr(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

正确答案是: A    你选择的答案是:B     判题结果:×

28、取出工资在2000到3000元(包括上下限)之间的员工( )

A. select * from emp wher sal in (2000,3000);

B. select * from emp wher sal like (2000,3000);

C. select * from emp wher sal = (2000,3000);

D. select * from emp wher sal between 2000 and 3000;

正确答案是: D    你选择的答案是:未选     判题结果:×

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值