龙空技术网

Java面试题——数据库篇(持续更新中)

晓掌柜丶韶华 232

前言:

如今咱们对“java数据库删除数据”都比较关切,我们都想要分析一些“java数据库删除数据”的相关内容。那么小编也在网上搜集了一些有关“java数据库删除数据””的相关知识,希望朋友们能喜欢,朋友们快快来了解一下吧!

一、承接上文,本篇为数据库操作篇,主要讲解面试中可能会遇到的数据库知识。

二、正文开始

1、基础的SQL操作语句

答案:①选择:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料!

②插入:insert into table1(field1,field2) values(value1,value2)

③删除:delete from table1 where 范围

④更新:update table1 set field1=value1 where 范围

⑤排序:select * from table1 order by field1,field2 [desc]

⑥总数:select count as totalcount from table1

⑦求和:select sum(field1) as sumvalue from table1

⑧平均:select avg(field1) as avgvalue from table1

⑨最大:select max(field1) as maxvalue from table1

⑩最小:select min(field1) as minvalue from table1

2、drop,delete与truncate的区别

答案:①drop是删除数据库表结构及数据,delete和truncate是删除数据库表数据。②delete在删除数据表数据后增长id延续删除之前的,可以加上where条件限制。③truncate在删除数据表数据后自增的id从1开始,不带有where条件。④一般来说在执行效率上drop>truncate>delete

3、索引的相关知识

答案:①通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。②可以大大加快数据的检索速度,这也是创建索引的最主要的原因。③在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。④使用索引可以优化数据筛选速率,提升数据库性能。⑤使用索引时尽量要以唯一不重复为标准。

4、视图相关知识

答案:①视图是虚拟的表,与包含数据的表不一样,视图只包含使用时动态检索数据的查询;不包含任何列或数据。②使用视图可以简化复杂的sql操作,隐藏具体的细节,保护数据。③ 视图不能被索引,也不能有关联的触发器或默认值,如果视图本身内有order by 则对视图再次order by将被覆盖。④创建视图语句如下:create view viewName as viewContent。⑤对视图的更新将对基表进行更新;但是视图主要用于简化检索,保护数据,并不用于更新,而且大部分视图都不可以更新。

5、存储过程相关知识

答案:①存储过程是预编译过的,执行效率高。②存储过程的代码直接存放于数据库中,通过存储过程名直接调用,减少网络通讯。③安全性高,执行存储过程需要有一定权限的用户。 ④存储过程可以重复使用,可减少数据库开发人员的工作量。 ⑤由于存储过程是实现编译好的,而且不同的数据库标准也不一样,说以移植性会比较差。⑥创建语句如下:CREATE PROCEDURE `new_procedure` () BEGIN XXXXXX END

5、函数相关知识

答案:①函数可以理解为Java类中的方法,在数据库中可以直接调用实现既定操作。②使用函数可以把具有规律性的操作通过调用函数的方式进行简化,节省了工作量,精简了代码,优化了操作速率。③创建语句如下:CREATE FUNCTION `new_function` () RETURNS INTEGER BEGIN RETURN 1; END

6、连接查询相关知识

答案:①INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录,eg:select * from A innerjoin B on A.aID = B.bID。②left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录,eg:select * from A left join B on A.aID = B.bID。③right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录,eg:select * from A right join B on A.aID = B.bID。④子查询eg:select id,name from userInfo where userId = (select id from user where name = 'asdf')。⑤这里仅仅给出sql语句格式,具体效果请于本地编译测试。

三、以上就是Java面试题--数据库篇的内容,持续更新中欢迎订阅关注。纯手打,如有不当之处敬请斧正。也希望在对大家产生作用的同时多多关注交流!

标签: #java数据库删除数据