什么是 PL/SQL?完整形式、开发人员和 ArchiPL/SQL 结构

什么是 PL/SQL?

Oracle PL / SQL 是 SQL 语言的扩展,它将 SQL 的数据操作能力与过程语言的处理能力相结合,以创建超强大的 SQL 查询。PL/SQL 通过增强数据库的安全性、可移植性和稳健性来确保 SQL 语句的无缝处理。

PL/SQL 意味着通过 SQL 指示编译器“做什么”,并通过其过程方式指示“如何做”。与其他数据库语言类似,它通过使用循环、条件和面向对象概念为程序员提供了更多控制权。PL/SQL 的全称是“SQL 的过程语言扩展”。

PL/SQL 全称

PL/SQL 代表“结构化查询语言的过程语言扩展”。PL/SQL 是 Oracle 公司的程序延期 SQL 和 Oracle 关系数据库。它是一种高性能、高度集成的数据库语言。

什么是 PL/SQL Developer?

PL / SQL Developer 是免费提供的集成开发环境 Oracle 开发软件 Oracle Database 环境并轻松执行各种数据库任务。PL/SQL Developer IDE 提供 GUI 和插件,以帮助最终用户节省数据库任务的时间。

ArchiPL/SQL 结构

下面的 PL/SQL 示例是 PL/SQL 的图形表示 Archi结构。

ArchiPL/SQL 结构
PL / SQL Archi结构图

PL/SQL架构主要由以下三个组件组成:

  1. PL/SQL 块
  2. PL/SQL 引擎
  3. 数据库服务器

PL/SQL 块

  • 这是具有实际 PL/SQL 代码的组件。
  • 它由不同的部分组成,以便逻辑地划分代码(声明部分用于声明目的,执行部分用于处理语句,异常处理部分用于处理错误)
  • 它还包含用于与数据库服务器交互的 SQL 指令。
  • 所有 PL/SQL 单元都被视为 PL/SQL 块,这是架构的起始阶段,作为主要输入。

以下是不同类型的 PL/SQL 单元。

  • 匿名区块
  • 功能
  • 自学资料库
  • 程序
  • 封装主体
  • 包装规格
  • 触发端口
  • 类型
  • 类型主体

PL/SQL 引擎

  • PL/SQL 引擎是实际处理代码的组件。
  • PL/SQL 引擎将输入中的 PL/SQL 单元和 SQL 部分分离(如下图所示)。
  • 分离的 PL/SQL 单元将由 PL/SQL 引擎本身处理。
  • SQL 部分将被发送到数据库服务器,在那里进行与数据库的实际交互。
  • 它既可以安装在数据库服务器中,也可以安装在应用程序服务器中。

数据库服务器

  • 这是存储数据的Pl/SQL单元的最重要的组件。
  • PL/SQL 引擎使用来自 PL/SQL 单元的 SQL 与数据库服务器交互。
  • 它由 SQL 执行器组成,用于解析输入的 SQL 语句并执行相同的操作。

PL/SQL 的特点和优势

  1. 性能更佳,因为 SQL 是批量执行的,而不是单个语句执行
  2. 高生产力
  3. 与 SQL 紧密集成
  4. 完全可移植性
  5. 严密的安全
  6. 支持面向对象编程概念。
  7. 可扩展性和可管理性
  8. 支持Web应用程序开发
  9. 支持服务器页面开发

PL/SQL 的缺点

  1. PL/SQL 中的存储过程占用大量内存
  2. 缺乏存储过程的功能调试
  3. 底层数据库的任何变化也需要表示层的变化
  4. 没有完全区分后端开发人员和前端开发人员的角色
  5. 难以将 HTML 开发与 PL/SQL 开发分开

SQL 和 PL/SQL 之间的区别

以下是一些重要的区别 SQL 和 PL/SQL:

SQL PL / SQL
SQL 是用于执行 DML 和 DDL 操作的单一查询。 PL/SQL 是用于编写整个程序块/过程/函数等的代码块。
它是声明性的,定义需要做什么,而不是如何做。 PL/SQL 是程序性的,它定义了事情需要如何完成。
作为单个语句执行。 作为整体块执行。
主要用于操作数据。 主要用于创建应用程序。
与数据库服务器的交互。 与数据库服务器没有交互。
其中不能包含 PL/SQL 代码。 它是SQL的扩展,因此它可以包含SQL在里面。

总结

  • PL-SQL 是由 Oracle.
  • PL SQL 的全称是“结构化查询语言的过程语言扩展”。
  • PL-SQL 最适合于 Oracle 数据库服务器。它是一种高性能、高集成度的数据库语言。
  • PL/SQL 支持数据封装、函数重载和信息隐藏等 oops 概念。