联表查询 && 索引 && 事务 && JDBC使用 &&CPU工作原理 && 线程概念 && Thread类的用法

简介: 联表查询 && 索引 && 事务 && JDBC使用 &&CPU工作原理 && 线程概念 && Thread类的用法

第 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

第 4 题(编程题)

题目名称:

写出以下数据库的查询条件【交大思诺2020届校招笔试题】

题目内容:

有两个表分别如下:

表A(varchar(32) name, int grade)

数据:zhangshan 80, lisi 60, wangwu 84

表B(varchar(32) name, int age)

数据:zhangshan 26, lisi 24, wangwu 26, wutian 26

写SQL语句得到如下查询结果:

| NAME   | GRADE | AGE |

| --------- | ----- | ---- |

| zhangshan | 80  | 26  |

| lisi   | 60  | 24  |

| wangwu  | 84  | 26  |

| wutian  | null | 26  |

第 5 题(编程题)

题目名称:

有员工表、部门表和薪资表,根据查询条件写出对应的sql【同程艺龙2020届校招笔试题】

题目内容:

现在有员工表、部门表和薪资表。部门表depart的字段有depart_id, name;员工表 staff 的字段有 staff_id, name, age, depart_id;薪资表salary 的字段有 salary_id,staff_id,salary,month。

(问题a):求每个部门'2016-09'月份的部门薪水总额

(问题b):求每个部门的部门人数,要求输出部门名称和人数

(问题c):求公司每个部门的月支出薪资数,要求输出月份和本月薪资总数

第 6 题(编程题)

题目名称:

编写一个SQL查询,获取Employee表中第二高的薪水(Salary)【陌陌科技2020届校招笔试题】

题目内容:

编写一个SQL查询,获取Employee表中第二高的薪水(Salary)【陌陌科技2020届校招笔试题】

+-----+-------+

| Id | Salary|

+-----+-------+

| 1  | 100 |

+-----+-------+

| 2  | 200 |

+-----+-------+

| 3  | 300 |

+-----+-------+

例如上述Employee表,SQL查询应该返回200作为第二高的薪水。如果不存在第二高的薪水,那么查询应该返回null。

+---------------------+

| SecondHighestSalary |

+---------------------+

|    200     |

+---------------------+

第 1 题(单选题)

题目名称:

SQL语句性能分析的关键字是什么?

题目内容:

A .EXPLAIN

B .LOAD

C .TOP

D .SUM

第 2 题(单选题)

题目名称:

下列说法错误的是:

题目内容:

A .索引一定会提高查询效率

B .索引需要保存成物理文件

C .不是所有查询操作都会使用索引

D .修改、删除操作也可以使用索引

第 3 题(单选题)

题目名称:

关于索引(index)的说法哪些是错误?

题目内容:

A .创建索引能提高数据插入的性能

B .索引应该根据具体的检索需求来创建,在选择性好的列上创建索引

C .索引并非越多越好

D .建立索引可使检索操作更迅速

第 1 题(单选题)

题目名称:

下列哪个不属于事务的特性

题目内容:

A .原子性

B .并发性

C .隔离性

D .持久性

第 2 题(单选题)

题目名称:

事务的持续性是指?

题目内容:

A .事务中包括的所有操作要么都做,要么不做

B .事务一旦提交,对数据库的改变时永久的

C .一个事务内部的操作及使用的数据对并发的其他事务是隔离的

D .事务必须是使数据库从一个一致性状态变到另一个一致性状态

第 3 题(单选题)

题目名称:

进行数据库提交操作时使用事务(Transaction)是为了?

题目内容:

A .提高效率

B .保证数据一致性

C .网络安全

D .归档数据文件

第 4 题(单选题)

题目名称:

设有两个事务T1,T2,其并发操作如下所示,下面评价正确的是

步骤      T1      T2

1      读A=100

2             读A=100

3      A=A+10写回

4             A=A-10写回

题目内容:

A .该操作不能重复读

B .该操作不存在问题

C .该操作读"脏"数据

D .该操作丢失修改

第 5 题(单选题)

题目名称:

事务日志用于保存

题目内容:

A .程序运行过程

B .程序的执行结果

C .对数据的更新操作

D .对数据的查询操作

第 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

第 6 题(编程题)

题目名称:

有一个图书管理系统,请根据要求写出对应的sql

题目内容:

有一个图书管理系统,包含学生和图书信息,且图书可以进行分类,学生可以在一个时间范围内借阅图书,并在这个时间范围内归还图书。表和表关系如下:

 

DROP DATABASE IF EXISTS ebook;
CREATE DATABASE ebook CHARACTER SET 'utf8mb4';
USE ebook;
-- ----------------------------
-- Table structure for category
-- ----------------------------
DROP TABLE IF EXISTS category;
CREATE TABLE category (
 id int(11) PRIMARY KEY AUTO_INCREMENT,
 name varchar(20)
);
-- ----------------------------
-- Records of category
-- ----------------------------
INSERT INTO category VALUES (1, '历史');
INSERT INTO category VALUES (2, '艺术');
INSERT INTO category VALUES (3, '计算机');
INSERT INTO category VALUES (4, '数学');
INSERT INTO category VALUES (5, '小说');
-- ----------------------------
-- Table structure for student
-- ----------------------------
DROP TABLE IF EXISTS student;
CREATE TABLE student (
 id int(11) PRIMARY KEY AUTO_INCREMENT,
 name varchar(20)
);
-- ----------------------------
-- Records of student
-- ----------------------------
INSERT INTO student VALUES (1, '王昭君');
INSERT INTO student VALUES (2, '李白');
INSERT INTO student VALUES (3, '貂蝉');
INSERT INTO student VALUES (4, '小乔');
INSERT INTO student VALUES (5, '韩信');
-- ----------------------------
-- Table structure for book
-- ----------------------------
DROP TABLE IF EXISTS book;
CREATE TABLE book (
 id int(11) PRIMARY KEY AUTO_INCREMENT,
 name varchar(20),
 author varchar(20),
 price decimal(10, 2),
 category_id int(11),
 CONSTRAINT fk_book_category_id FOREIGN KEY (category_id) REFERENCES category (id)
);
-- ----------------------------
-- Records of book
-- ----------------------------
INSERT INTO book VALUES (1, '深入理解Java虚拟机', '周志明', 57.90, 3);
INSERT INTO book VALUES (2, '西游记', '吴承恩', 30.68, 5);
INSERT INTO book VALUES (3, '儒林外史', '吴敬梓', 18.80, 5);
INSERT INTO book VALUES (4, '聊斋志异', '蒲松龄', 21.00, 5);
INSERT INTO book VALUES (5, '史记', '司马迁', 278.20, 1);
INSERT INTO book VALUES (6, '资治通鉴', '司马光', 524.00, 1);
INSERT INTO book VALUES (7, 'Java核心技术 卷I:基础知识', 'Cay S. Horstmann', 92.50, 3);
INSERT INTO book VALUES (8, 'Java核心技术卷II:高级特性', 'Cay S. Horstmann', 111.20, 3);
INSERT INTO book VALUES (9, 'Java多线程编程核心技术', '高洪岩', 47.50, 3);
INSERT INTO book VALUES (10, '诗经', '孔子', 22.00, 2);
INSERT INTO book VALUES (11, '唐诗三百首', '蘅塘居士', 49.30, 2);
INSERT INTO book VALUES (12, '唐诗三百首', '蘅塘居士', 55.00, 2);
INSERT INTO book VALUES (13, '西游记', '吴承恩', 47.50, 5);
INSERT INTO book VALUES (14, '唐诗三百首', '蘅塘居士', 56.50, 2);
-- ----------------------------
-- Table structure for borrow_info
-- ----------------------------
DROP TABLE IF EXISTS borrow_info;
CREATE TABLE borrow_info (
 id int(11) PRIMARY KEY AUTO_INCREMENT,
 book_id int(11),
 student_id int(11),
 start_time timestamp null,
 end_time timestamp null,
 CONSTRAINT fk_borrow_info_book_id FOREIGN KEY (book_id) REFERENCES book (id),
 CONSTRAINT fk_borrow_info_student_id FOREIGN KEY (student_id) REFERENCES student (id)
);
-- ----------------------------
-- Records of borrow_info
-- ----------------------------
INSERT INTO borrow_info VALUES (1, 1, 1, '2018-11-07 18:50:43', '2018-12-07 18:51:01');
INSERT INTO borrow_info VALUES (2, 7, 1, '2019-07-10 10:21:00', '2019-09-10 10:21:00');
INSERT INTO borrow_info VALUES (3, 8, 1, '2019-09-10 10:21:00', '2019-10-10 10:21:00');
INSERT INTO borrow_info VALUES (4, 2, 2, '2019-03-02 16:37:00', '2019-04-02 16:37:00');
INSERT INTO borrow_info VALUES (5, 4, 2, '2019-03-12 14:25:00', '2019-04-12 14:25:00');
INSERT INTO borrow_info VALUES (6, 10, 2, '2019-07-13 16:21:00', '2019-10-13 16:21:00');
INSERT INTO borrow_info VALUES (7, 11, 2, '2019-06-09 09:40:00', '2019-07-09 09:40:00');
INSERT INTO borrow_info VALUES (8, 13, 2, '2019-01-03 15:11:00', '2019-04-03 15:11:00');
INSERT INTO borrow_info VALUES (9, 7, 3, '2019-05-15 13:13:00', '2019-06-15 13:13:00');
INSERT INTO borrow_info VALUES (10, 8, 3, '2019-04-27 13:53:00', '2019-05-27 13:53:00');
INSERT INTO borrow_info VALUES (11, 9, 3, '2019-06-01 11:32:00', '2019-07-01 11:32:00');
INSERT INTO borrow_info VALUES (12, 3, 4, '2019-07-01 09:40:00', '2019-08-01 09:40:00');
INSERT INTO borrow_info VALUES (13, 4, 4, '2019-06-19 11:40:00', '2019-07-19 11:40:00');
INSERT INTO borrow_info VALUES (14, 5, 4, '2019-06-25 09:23:00', '2019-09-25 09:23:00');
INSERT INTO borrow_info VALUES (15, 10, 4, '2019-08-27 15:30:00', '2019-09-27 15:30:00');
INSERT INTO borrow_info VALUES (16, 5, 5, '2019-01-23 14:20:00', '2019-04-23 14:20:00');
INSERT INTO borrow_info VALUES (17, 6, 5, '2019-03-09 10:45:00', '2019-04-09 10:45:00');
INSERT INTO borrow_info VALUES (18, 10, 5, '2019-06-17 11:32:00', '2019-09-17 11:32:00');

要求:

1. 新增貂蝉同学的借阅记录:诗经,从2019年9月25日17:50到2019年10月25日17:50

2. 查询计算机分类下的图书借阅信息

3. 修改图书《深入理解Java虚拟机》的价格为61.20

4. 删除id最大的一条借阅记录

第 7 题(编程题)

题目名称:

实现数据库版的图书馆管理系统

题目内容:

参照课堂代码, 实现数据库版本的图书馆管理系统

第 8 题(编程题)

题目名称:

实现数据库版本的图书馆里系统

题目内容:

实现数据库版本的图书馆里系统

第 9 题(编程题)

题目名称:

基于 JDBC 实现增删改查的 demo 程序

题目内容:

在 student 表 (id int, name varchar(40)) 中

通过 jdbc 进行增删改查代码操作.

每个操作通过一个类实现.

第 1 题(多选题)

题目名称:

以下哪些功能属于操作系统负责完成的?

题目内容:

A .进程调度

B .内存管理

C .组织文件系统

D .配置CPU电压

第 2 题(多选题)

题目名称:

常见的操作系统有

题目内容:

A .Windows

B .Linux

C .Android

D .IPhone

第 3 题(多选题)

题目名称:

以下哪种说法是正确的?

题目内容:

A .存取速度: CPU > 内存 > 硬盘

B .存取速度: 内存 > CPU > 硬盘

C .存储空间: 硬盘 > 内存 > CPU

D .存储空间: 内存 > 硬盘 > CPU

第 4 题(多选题)

题目名称:

以下哪个设备属于 "输入设备" ?

题目内容:

A .网卡

B .U盘

C .音箱

D .手写笔

第 5 题(多选题)

题目名称:

冯诺依曼体系结构中, 描述计算机包含哪几个组成部分?

题目内容:

A .CPU

B .存储器

C .输入设备

D .输出设备

第 1 题(简答题)

题目名称:

编写博客, 总结进程和线程的区别和联系

题目内容:

编写博客, 总结进程和线程的区别和联系

第 2 题(编程题)

题目名称:

编写代码, 实现创建线程的五种写法

题目内容:

  1. 继承 Thread, 重写 run
  2. 实现 Runnable, 重写 run
  3. 继承 Thread, 重写 run, 使用匿名内部类
  4. 实现 Runnable, 重写 run, 使用匿名内部类
  5. 使用 lambda 表达式

贴上核心代码和关键结果截图.

第 1 题(简答题)

题目名称:

请回答以下代码的输出, 并解释原因

题目内容:

public static void main(String[] args) {
    Thread t = new Thread(new Runnable() {
        @Override
        public void run() {
            System.out.println("1");
        }
    });
    t.start();
    System.out.println("2");
}

第 2 题(编程题)

题目名称:

在子线程执行完毕后再执行主线程代码

题目内容:

有20个线程,需要同时启动。

每个线程按0-19的序号打印,如第一个线程需要打印0

请设计代码,在main主线程中,等待所有子线程执行完后,再打印 ok

第 3 题(简答题)

题目名称:

请说明Thread类中run和start的区别

题目内容:

从方法的区别,及运行结果的区别分别说明

第 4 题(简答题)

题目名称:

编写博客, 总结 Thread 类的基本用法

题目内容:

  1. 线程创建
  2. 线程中断
  3. 线程等待
  4. 线程休眠
  5. 获取线程实例
相关文章
|
1月前
|
存储 缓存
CPU运算器的工作原理基于其内部结构,通过执行算术和逻辑操作来完成各种任务
CPU运算器的工作原理基于其内部结构,通过执行算术和逻辑操作来完成各种任务
53 3
|
1月前
CPU的工作原理基于其内部结构,通过执行指令来完成各种任务
CPU的工作原理基于其内部结构,通过执行指令来完成各种任务
54 2
|
1月前
CPU的原理
CPU的原理
52 1
|
3月前
|
安全 Java 数据库
一天十道Java面试题----第四天(线程池复用的原理------>spring事务的实现方式原理以及隔离级别)
这篇文章是关于Java面试题的笔记,涵盖了线程池复用原理、Spring框架基础、AOP和IOC概念、Bean生命周期和作用域、单例Bean的线程安全性、Spring中使用的设计模式、以及Spring事务的实现方式和隔离级别等知识点。
|
3月前
|
编解码 网络协议 API
Netty运行原理问题之Netty的主次Reactor多线程模型工作的问题如何解决
Netty运行原理问题之Netty的主次Reactor多线程模型工作的问题如何解决
|
3月前
|
Go 调度 开发者
[go 面试] 深入理解进程、线程和协程的概念及区别
[go 面试] 深入理解进程、线程和协程的概念及区别
|
2月前
|
存储 缓存 Java
什么是线程池?从底层源码入手,深度解析线程池的工作原理
本文从底层源码入手,深度解析ThreadPoolExecutor底层源码,包括其核心字段、内部类和重要方法,另外对Executors工具类下的四种自带线程池源码进行解释。 阅读本文后,可以对线程池的工作原理、七大参数、生命周期、拒绝策略等内容拥有更深入的认识。
137 29
什么是线程池?从底层源码入手,深度解析线程池的工作原理
|
1月前
|
Java 编译器 程序员
【多线程】synchronized原理
【多线程】synchronized原理
57 0
|
1月前
|
Java 应用服务中间件 API
nginx线程池原理
nginx线程池原理
31 0
|
2月前
|
数据采集 消息中间件 并行计算
进程、线程与协程:并发执行的三种重要概念与应用
进程、线程与协程:并发执行的三种重要概念与应用
57 0

热门文章

最新文章

相关实验场景

更多