存储过程高频面试题及详细答案(实战口语版).docxVIP

  • 0
  • 0
  • 约3.37千字
  • 约 6页
  • 2026-09-03 发布于河北
  • 举报

存储过程高频面试题及详细答案(实战口语版).docx

存储过程高频面试题及详细答案(实战口语版)

一、基础认知类(入门必问)

1、什么是存储过程?简单说下你的理解

参考答案:

存储过程就是把一堆经常用到的SQL语句,封装在数据库里的一段“可编程代码块”。可以理解成数据库层面的自定义方法/函数。

它支持逻辑判断、循环、变量、事务,写完之后可以直接调用,不用每次重复写一大段SQL,大部分业务复杂的批量操作、数据统计、数据同步都会用它。

2、存储过程和普通SQL语句相比,有什么优缺点?

参考答案:

优点:

1、执行效率更高。存储过程编译后会缓存执行计划,后续调用不用重新解析编译,批量操作优势很明显;

2、代码复用性好。通用的查询、统计、数据处理逻辑,封装后全项目可以共用,不用每个业务重复写SQL;

3、安全性更好。可以直接给用户开放存储过程调用权限,不开放底层表的读写权限,保护原始数据;

4、减少网络开销。复杂批量操作只需要调用一次存储过程,不用程序循环传大量SQL到数据库。

缺点:

1、可移植性差。不同数据库的存储过程语法不通用,MySQL、Oracle、SQLServer写法差异很大,换数据库基本要重写;

2、维护成本高。业务逻辑堆在数据库里,代码和业务耦合严重,版本迭代、bug排查比业务代码麻烦;

3、调试不方便。不像Java、Python代码有成熟的调试工具,存储过程排错、日志记录都比较繁琐;

4、占用数据库资源。复杂存储过程长

文档评论(0)

1亿VIP精品文档

相关文档