以下哪种数据库对象可以实现 SQL 语句的封装与复用?
A. 触发器
B. 存储过程
C. 虚拟列
D. 分区表
2 个赞
正确答案是 B. 存储过程 。
解析:
- B. 存储过程(Stored Procedure)正确 :存储过程是一组为了完成特定功能的 SQL 语句集,它被预先编译并存储在数据库中。用户可以通过指定存储过程的名字并给定参数(如果有)来调用执行它。它的主要作用之一就是实现 SQL 语句的封装、模块化以及复用。
- A. 触发器(Trigger)错误 :触发器是一种特殊的存储过程,但它不能被直接调用或复用,而是与特定的表绑定,在发生特定事件(如 INSERT、UPDATE、DELETE)时自动隐式执行。
- C. 虚拟列(Virtual Column)错误 :虚拟列是表中不实际存储数据,而是通过表达式动态计算得出的列,主要用于简化查询或作为索引/分区键,不能用于封装 SQL 语句。
- D. 分区表(Partitioned Table)错误 :分区表是一种数据存储和管理的物理结构,旨在提高大表的管理效率和查询性能,与 SQL 语句的封装复用无关。