专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 收藏版Java初级面试题数据库

收藏版Java初级面试题数据库

更新时间:2020-02-03 17:14:44 来源:动力节点 浏览2130次


  数据库的知识,对于开发工程师来讲,也是同样重要,是开发过程中的重中之重,很多的业务逻辑,比如:报表模块等,只要sql语句能写出来,就相当于完成大部分的功能了,以下为关于数据库在面试过程中常见的10道题,供参考。


收藏版Java初级面试题数据库


  1:触发器的作用?


  ·触发器是一种特殊的存储过程,主要是通过事件来触发而被执行的。


  ·它可以强化约束,来维护数据的完整性和一致性。


  ·可在写入数据表前,强制检验或转换数据。


  ·触发器发生错误时,异动的结果会被撤销。


  ·部分数据库管理系统可以针对数据定义语言(DDL)使用触发器,称为DDL触发器。


  ·可依照特定的情况,替换异动的指令(INSTEADOF)。


  2:触发器的限制有哪些?


  ·一个表最多只能有三个触发器,insert、update、delete


  ·每个触发器只能用于一个表


  ·不能对视图、临时表创建触发器


  ·Truncatetable能删除表,但不能触发触发器


  3:什么是存储过程?用什么来调用?


  ·存储过程存在于大型数据库系统中,是一个预编译的SQL语句(为了完成特定功能的SQL语句集),经过第一次编译后再次调用不需要再次编译。


  -优点是:


  -允许模块化的设计,就是说只需创建一次,以后在该程序中就可以调用多次。


  -如果某次操作需要执行多次SQL,使用存储过程比单纯SQL语句执行要快。


  -减少网络流量。存储过程位于服务器上,调用的时候只需要传递存储过程的名称以及参数就可以了,因此降低了网络传输的数据量。


  -安全性。参数化的存储过程可以防止SQL注入式攻击,而且可以将Grant、Deny以及Revoke权限应用于存储过程。


  -调用:


  -1)可以用一个命令对象来调用存储过程。


  -2)可以供外部程序调用,比如:java程序。


  4:索引的作用?它的优缺点是什么?


  ·索引就一种特殊的查询表,数据库的搜索可以利用它加速对数据的检索。


  ·它很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。


  ·索引可以是唯一的,创建索引允许指定单个列或者是多个列。


  ·缺点是它减慢了数据录入的速度,同时也增加了数据库的尺寸大小。


  5:什么样的字段适合建索引?


  ·唯一


  ·主、外键


  ·不为空


  ·表之间的关联字段


  ·查询比较频繁的字段


  6:索引类型有哪些?


  Singlecolumn单行索引


  Concatenated多行索引


  Unique唯一索引


  NonUnique非唯一索引


  Function-based函数索引


  Domain域索引物理上:


  Partitioned分区索引


  NonPartitioned非分区索引


  B-tree:


  Normal正常型B树


  ReverKey反转型B树


  Bitmap位图索引


  7:什么是事务?什么是锁?


  -事务就是被绑定在一起作为一个逻辑工作单元的SQL语句分组


  如果任何一个语句操作失败那么整个操作就被失败,以后操作就会回滚到操作前状态,或者是上有个节点。


  为了确保要么执行,要么不执行,就可以使用事务。


  要将有组语句作为事务考虑,就需要通过ACID测试:


  即原子性,一致性,隔离性和持久性。


  -锁:锁是实现事务的关键,锁可以保证事务的完整性和并发性。


  与现实生活中锁一样,它可以使某些数据的拥有者,在某段时间内不能使用某些数据或数据结构。


  当然锁还分级别的,比如页级锁、行级锁等。


  8:什么叫视图?游标是什么?


  -视图:是一种虚拟的表,具有和物理表相同的功能。


  可以对视图进行增,改,查,操作,试图通常是有一个表或者多个表的行或列的子集。


  对视图的修改会影响基本表。它使得我们获取数据更容易,相比多表查询。


  -游标:是对查询出来的结果集作为一个单元来有效的处理。


  游标可以定在该单元中的特定行,从结果集的当前行检索一行或多行。


  可以对结果集当前行做修改。


  一般不使用游标,但是需要逐条处理数据的时候,游标显得十分重要。


  9:视图的优缺点?


  -优点:


  -对数据库的访问,因为视图可以有选择性的选取数据库里的一部分。


  -用户通过简单的查询可以从复杂查询中得到结果。


  -维护数据的独立性,试图可从多个表检索数据。


  -对于相同的数据可产生不同的视图。


  -缺点:


  -性能:查询视图时,必须把视图的查询转化成对基本表的查询,如果这个视图是由一个复杂的多表查询所定义,那么,那么就无法更改数据


  10:列举几种表连接方式,有什么区别?


  -内连接、自连接、外连接(左、右、全)、交叉连接


  -内连接:只有两个元素表相匹配的才能在结果集中显示。


  -外连接:


  -左外连接:左边为驱动表,驱动表的数据全部显示,匹配表的不匹配的不会显示。


  -右外连接:右边为驱动表,驱动表的数据全部显示,匹配表的不匹配的不会显示。


  -全外连接:连接的表中不匹配的数据全部会显示出来。


  -交叉连接:笛卡尔效应,显示的结果是链接表数的乘积。


收藏版Java初级面试题数据库


      以上就是动力节点Java培训机构小编介绍的“收藏版Java初级面试题数据库”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为你服务。


相关推荐


最新最全java面试题及答案(初级到高级)


史上最全的中高级JAVA工程师面试题及答案汇总


Java高级开发工程师面试题


2019史上最全java面试题题库大全800题


哪有资深java工程师面试题


提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>