JAVA高级工程师面试宝典——数据库方面(七)

版权声明:南山浪子 https://blog.csdn.net/lch520baby/article/details/88253022

七、数据库方面

1.mysql查询字段区不区分大小写?

答:不区分,哪怕值也不区分

2.简单说说数据库集群和负载均衡、分布式

答:

 

3.存储过程的结构和优点

答:结构create proc proc_find_stu(@startId int, @endId int)as

    select * from student where id between @startId and @endIdgo

 

存储过程说白了就是一堆 SQL 的合并。中间加了点逻辑控制

1.存储过程可以给我们带来运行效率提高的好处减少数据库连接

2.程序容易出现 BUG 不稳定,而存储过程,只要数据库不出现问题,基本上是不会出现什么问题的。也就是说从安全上讲,使用了存储过程的系统更加稳定

优势主要体现在:
  1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般 SQL 语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。
  2.当对数据库进行复杂操作时(如对多个表进行 Update,Insert,Query,Delete 时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。这些操作,如果用程序来完成,就变成了一条条的 SQL 语句,可能要多次连接数据库。而换成存储,只需要连接一次数据库就可以了。
  3.存储过程可以重复使用,可减少数据库开发人员的工作量。
  4.安全性高,可设定只有某此用户才具有对指定存储过程的使用权。

 

4.触发器的原理和作用

答:触发器是针对数据表(库)的特殊存储过程,当这个表发生了insert、update或delete操作时,会自动激活执行的,可以处理各种复杂的操作。

 

 

------------------------------------------------------------------------------

上一篇:JAVA高级工程师面试宝典——并发和安全方面(六)

下一篇:JAVA高级工程师面试宝典——Java底层(八)

------------------------------------------------------------------------------
 

猜你喜欢

转载自blog.csdn.net/lch520baby/article/details/88253022