Python研究刚刚开始数据库

数据库编程

2017-11-27  本文已影响15人  iOS_愛OS

数据库编程


嵌入式 SQL


嵌入式 SQL 语句与主语言之间的通信

  1. 向主语言床底 SQL 语句的执行状态信息,使主语言能够据此信息控制程序流程,主要用 SQL 通信区(SQL communication Area ,简称 SQLCA) 实现

  2. 主语言向SQL 语句提供参数,主要用主变量(Host Variable) 实现

  3. 将 SQL 语句查询数据库的结果交主语言处理,主要用主变量和游标(Cursor)实现。


不用游标 的 SQL 语句

不需要使用游标的 SQL 语句:说明性语句、数据定义语句、数据控制语句、查询结果为单记录的SELECT 语句、非 CURRENT 形式的增删改语句。

例:某个学生退学了,现要将有关他的所有选课记录删除掉。假设该学生的姓名已赋给主变量 stdname

    EXEC SQL DELETE 
            FROM SC
            WHERE Sno = 
                        (SELECT Sno
                         FROM Student
                         WHERE Sname = :stdnome);

例:某个学生新选修了某门课程,将有关记录插入 SC 表中,假设插入的学号已赋给主变量 stdno, 课程号已赋给主变量 couno

    gradeid = -1                /* 用作只是变量,赋为负值 */
    EXEC SQL INSERT 
            INTO SC(Sno,Cno,Grade)
            VALUES(:stdno,:couno,:gr:gradeid);

由于该学生刚选修课程,成绩应为空,所以要把只是变量赋为负值


使用游标的 SQL 语句

必须使用游标的 SQL 语句有: 查询结果为 多条记录的 SELECT 语句、CURRENT 形式的 UPDATE 和 DELETE 语句


动态 SQL

动态 SQL 支持动态组装 SQL 语句和动态参数两种形式

存储过程

PL/SQL (Procedural Language/ SQL, PL/SQL) 是编写数据库存储过程的一种过程语言。它结合了 SQL 的数据操作能力和过程化语言的流程控制能力, 是SQL 的过程化扩展。


PL/SQL 的块结构

PL/SQL 程序的基本结构是块。所有的 PL/SQL 程序都是由块组成的。这些块之间可以互相嵌套,每个块完成一个逻辑操作。

变量常量的定义

                |DECLARE                /* 定义的变量,常量等职能在该基本块中使用 */   
定义部分  <--    |
                |----变量,常量,游标,异常等 /* 当基本块执行结束时,定义就不再存在 */

                | BEGIN
                |--------SQL 语句,PL/SQL 的流程控制语句
执行部分    <--- |EXCEPTION         /* 遇到不能继续执行的情况称为异常 */
                |--------异常处理部分 /* 在出现异常时,采取措施来纠正错误或报告错误 */
                |END;

控制结构


存储过程


ODBC 编程

使用ODBC 编写的应用程序可移植性好,能同事访问不同的数据库,共享多个数据资源

数据库互连概述


ODBC 工作原理概述


ODBC API 基础

ODBC 应用程序接口(DDBC Application Intertace, ODBC API) 都要符合两方面的一致性


上一篇下一篇

猜你喜欢

热点阅读