嵌入式 SQL

将SQL语句发送到 DBMS 的第一种方法是嵌入SQL。 由于SQL不使用变量和控制流语句,因此它通常用作数据库子语言,可以添加到采用传统编程语言(如 C 或 COBOL)的程序。 这是嵌入式SQL的核心理念:将SQL语句放置在以主机编程语言编写的程序中。 简要地说,以下技术用于在主机语言中嵌入SQL语句:

  • 嵌入式SQL语句由特殊的SQL预编译程序处理。 所有SQL语句都以引入器开头,以终止符结尾,这两个语句都标记预编译程序的SQL语句。 引入者和终止符因主机语言而异。 例如,介绍器在 C 中为“EXEC SQL”,MUMPS 中的“&SQL (”,终止符是 C 中的分号 (;) ,在 MUMPS 中为右括号。

  • 无论允许常量,都可以在嵌入的SQL语句中使用应用程序程序中的变量(称为主机变量)。 这些语句可用于输入,以便根据特定情况和输出定制SQL语句来接收查询结果。

  • 使用单一 SELECT 语句处理返回单个数据行的查询;此语句指定要在其中返回数据的查询和主机变量。

  • 使用游标处理返回多行数据的查询。 游标跟踪结果集中的当前行。 DECLARE CURSOR 语句定义查询,OPEN 语句开始查询处理,FETCH 语句检索连续的数据行,CLOSE 语句结束查询处理。

  • 当游标处于打开状态时,定位更新和定位删除语句可用于更新或删除游标当前选择的行。

本部分包含以下主题。