选择题-数据库

这篇博客主要涵盖了数据库相关的JDBC选择题,包括JDBC连接方式、特点以及优缺点;数据库约束,如实体完整性、空值操作;聚合查询的关键词用法;以及联表查询的行数计算和类型。同时,提供了选择题的答案解析,帮助读者深入理解这些概念。

JDBC

1、关于JDBC以下说法错误的是

A、DriverManager可以获取数据库连接

B、DataSource获取的数据库连接是可以重用的

C、DataSource获取的数据库连接也需要关闭物理连接

D、DataSource获取数据库连接也需要加载数据库驱动

2、下列说法错误的是

A、使用JDBC拥有更好的可移植性

B、JDBC制定了统一的数据库编程规范,需要由数据库厂商提供驱动包

C、JDBC也可以使用来连接NoSQL数据库,比如Redis

D、JDBC也可以执行DDL指令

3、关于PreparedStatement与Statement描述错误的是

A、一般而言,PreparedStatement比Statement执行效率更高

B、PreparedStatement会预编译SQL语句

C、Statement每次都会解析/编译SQL,确立并优化数据获取路径

D、Statement执行扫描的结果集比PreparedStatement大

4、执行同构的SQL、执行异构的SQL和调用存储过程分别调用的接口是:【完美世界2020届校招笔试题】

A、PreparedStatement、Statement、CallableStatement

B、CallableStatement、PreparedStatement、Statement

C、Statement、CallableStatement、PreparedStatement

D、PreparedStatement、CallableStatement、Statement

5、阅读下面两条查询语句,会因为使用了PreparedStatement使查询性能得以提升的是:【完美世界2020届校招面试题】

Query1:

String loanType = getLoanType();
PreparedStatement prestmt = conn.preparedStatement("select banks from loan where loan_type=" + loanType);


Query2:

String loanType = getLoanType();
PreparedStatement prestmt = conn.preparedStatement("select banks from loan where loan_type=?");
prestmt.setString(1, loanType);

A、Query1

B、Query2

C、Query1和Query2

D、None of them


数据库约束

1、SQL中,下列涉及空值的操作,不正确的是?

A、name IS NULL

B、name= NULL

C、namee IS NoT NULL

D、NoT(name IS NULL)

2、在满足实体完整性约束的条件下

A、一个关系中应该有一个或多个候选关键字

B、一个关系中只能有一个候选关键字

C、一个关系中必须有多关键字个候选

D、一个关系中可以没有候选关键字

3、下列选项中,不属于SQL约束的是:

A、UNIQUE

B、PRIMARY KEY

C、FOREIGN KEY
D、BETWEEN

4、若实体A和B是一对多的联系,实体B和C是一对一的联系,则实体A和C的联系是?

A、一对一

B、一对多

C、多对一

D、多对多


聚合查询

1、SQL 查询语句中 WHERE 、 GROUP BY 、 HAVING 这些关键字区别和用法总结错误的是

A、HAVING在查询语句中必须依赖于GROUP BY

B、WHERE子句用来限制SELECT语句从表中指定选取的行

C、GROUP BY子句用来分组WHERE子句的输出结果集

D、HAVING子句用来从分组的结果中筛选列

2、某查询语句运行后返回的结果集为:

| 1| 72 |

| 2| 75 |

| 3| NULL |

则最有可能的查询语句是以下:

A、SELECT class, AVG(score) FROM test WHERE class<3

B、SELECT class, AVG(score) FROM test WHERE class<3 GROUP BY class

C、SELECT class, AVG(score) FROM test WHERE class<3 GROUP BY ALL class

D、SELECT class, AVG(score) FROM test GROUP BY class HAVING class<3

3、有订单表orders,包含字段用户信息userid,字段产品信息productid,查询至少被订购过两回的productid。

A、select productid from orders where count(productid)>1

B、select productid from orders where max(productid)>1

C、select productid from orders where having count(productid)>1 group
by productid

D、select productid from orders group by productid having
count(productid)>1


联表查询

1、已知表T1中有2行数据,T2中有3行数据,执行SQL语句,“select a.* from T1 a,T2 b”后,返回的行数为

A、2行

B、3行

C、5行

D、6行

2、Mysql查询时,只有满足联接条件的记录才包含在查询结果,这种联接是

A、左联接

B、右联接

C、内联接

D、全联接

3、数据库做join操作时,至少要涉及到几张表?

A、3

B、1

C、2

D、4


JDBC选择题答案
1.C
2.C

MySql 常用的DDL指令
NoSQL数据库没有标准的查询语言(SQL)

3D

PreparedStatement 的SQL语句会预编译在数据库系统
Statement每次都会解析/编译SQL,确立并优化数据获取路径

4A

同构的SQL pre 同构指的是两个SQL语句的可编译部分是相同的只是参数不一样
异构的SQL statement 异构指的是两个SQL语句整个格式都是不一样的
CallableStatement(用于数据库存储过程的调用)

5B


数据库约束选择题
1B

参考:与null有关的表达式不能用"="

2A

实体完整性约束要求关系的主键中属性值不能为空值.

3D

4B


聚合查询选择题答案
1D

Having 依赖and筛行

2C

网友分析了一下,因为class<3,理应是没有三班的,但是出现了是all在起作用,具体的我也不会了

3D

Having要在groupBy后面


联表查询选择题答案
1D

2C

内连接是保证两个表的所有行都要满足连接条件
外连接不仅包含符合连接条件的行,而且还包括左表(左连接时),右表(右连接时)中的所有行数据.

3B

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值