-
三种并发操作带来的问题:
脏读,数据修改后没有提交。
幻读,第二次读取数据不同,产生幻觉。
不可重复读,一次事物之间进行两次读取,读取的内容不同。
-
jdbc默认的事务提交模式是什么?怎么设置?
自动提交。
conn.setAutoCommimt(true|false)
-
在Oracle中,有一个名为seq的序列对象,如果获取改序列的下一个值以及如何获取序列的当前值,请写出sql语句。
select seq.nextval from dual;
select seq.currval from dual;
-
关于oracle中的类型char和varchar2的区别是什么?
char是定长,varchar2的长度可变,varchar2是oracle数据库独有的一种类型
-
使用sql查询时,组函数可以放到什么语句后面?
select语句、having语句、order by 语句
不能放在where后面
-
在Oracle中,有一个教师表teacher的结构如下:
ID NUMBER(5)
NAME VARCHAR2(25)
EMAIL VARCHAR2(50)
请快速创建一个新表test,其中,test表有id和name俩字段,并且数据取自teacher表中的id和name列上的值。
create table test
as
select id,name
-
数据库事务的特点有哪几个?
原子性、一致性、隔离性、持久行
(ACID)
-
在sqlplus中执行脚本a.sql文件方式那有些,请列出俩种
start a.sql
@a.sql
-
oracle数据库字符函数substr的作用是什么,请举例说明。
字符串的截取
select substr(‘hello’,1,3) from dual;
结果为 hel
表示从hello的第一个字符开始,连续截取3个字符
-
select sysdata-1/2 from dual的查询结果表示的含义是什么?
返回值是一个时间数据,表示当前时间的往前推12小时的这个时间点。
-
maven中在什么地方修改本地仓库的位置?
maven安装目录的conf中的setting.xml中修改即可
-
maven打包项目的时候,怎么跳过测试阶段?
mvn package -Dmaven.test.skip=true
-
maven中build标签里面可以做哪些配置,列出三个
设置打包后最终名字
设置哪些资源可以过滤
设置使用的插件配置
-
oracle中查看当前用户是谁的命令是?
show user
-
oracle中查看当前用户下有哪些表是谁的命令是?
select table_name from user_tables;
-
svn中,如果服务器上的a文件的版本为10,那么我们在本地编辑提交文件a的时候,a的当前版本如果为9,那么这时候提交会怎么样?
提交出错,错误信息为 out of date ,表示当前文件版本已经过期,不是最新版本。
-
oracle中视图有哪些分类,有什么区别?view的本质上代表的是什么?
简单视图
sql语句中只有一张表,没有组函数,没有group by语句。
复杂视图
sql语句中查询的不是一张表,或者有组函数,或者有group by语句
view的本质上代表的是一条sql语句
-
请描述jdbc的步骤有哪些
注册驱动
获取数据库连接对象
创建stmt对象
执行sql语句
处理结果集合
关闭资源
-
请简述Statement和PreparedStatement的关系和区别。
Statement是父接口
PreparedStatement是子接口
Statement一般处理异构的sql语句,执行一次,把sql语句发给数据库一次
PreparedStatement一般处理同构的sql语句,可以使用?占位符,预先把sql发给数据库,然后每次再发送数据给数据库来代替?占位符即可。
-
有表一的查询结果如下,该表为学生成绩表:
select id,grade from student_grade
ID | GRADE |
---|---|
1 | 50 |
2 | 40 |
3 | 70 |
4 | 80 |
5 | 30 |
6 | 90 |
表二为补考成绩表
select id,grade from student_makeup
ID | GRADE |
---|---|
1 | 60 |
2 | 80 |
5 | 60 |
请写出sql语句,把学生的成绩查询出来,如果有补课成绩, 那么把补课成绩也显示出来。
select sg.id,sg.grade,sm.grade
from student_grade sg left outer join student_makeup sm
on sg.id = sm.id
-
maven的常用命令有哪些,请列出五个
mvn clean
mvn compile
mvn test
mvn package
mvn install
- s_emp表中,查询各部门中比当前部门平均工资高的员工信息,要求显示员工名字、工资、部门、部门平均工资
select s1.last_name,s1.salary,s1.dept_id,t.avgSal
from s_emp s1,(
select dept_id,avg(salary) avgSal
from s_emp
group by dept_id
) t
where
s1.dept_id = t.dept_id
and
s1.salary > t.avgSal
-
s_emp表中,查询每个管理者所管理的员工都有谁?要求不属于任何管理者的员工也要显示出来。
要求显示管理者名字、员工名字,并且取别名进行区别
select s1.last_name,s2.last_name
from s_emp s1 right outer join s_emp s2
on s1.id = s2.manager_id;