zoukankan      html  css  js  c++  java
  • DB2 9 运用斥地(733 检修)认证指南,第 1 局部: 数据库工具与编程举措(3)

    操纵根基道理构建根基
    developerWorks








    DB2 运用挨次斥地数据库工具

    例程

    在本局部,还将领会别的几种范例的数据库工具。这些工具的总称为例程。有三种主要功能范例的例程:存储历程函数举措。(有关这些范例之间的区别的更多信息,请拜见下面结果为 “存储历程、函数和举措” 的局部。)

    例程是用于封装与特定义务相干的编程和数据库逻辑的数据库工具。议决有用地应用例程,可简化运用挨次代码并进步代码重用率。比喻,要是将某种营业逻辑封装在例程中,则对营业规定法则的变化将只能影响到该具体式格局程。因此,可将对运用挨次的变化最小化。

    在数据库办事器上定义和处理例程。这将容许运用挨次充沛操纵数据库办事器的才调,同时又低落客户机上所需的处理负载。经常,复杂营业逻辑发出多个 SQL 语句。语句从客户机辨别发送到办事器,要是触及大批数据库勾当,则会招致网络通信量很高。要是在例程中捕捉这些操纵,则客户机与办事器板滞之间的网络通信量将大大添加,从而改善运用挨次的总体机能。

    可以加强宁静性是应用例程的另一个主要所长。例程可用来屏障对底层数据库工具的直接会晤。拥有 EXECUTE 权限就足以调用例程;无需具有底层数据库工具的显式权限。





    回页首



    例程的分比喻完成

    有以下几种或许的例程完成:

    • 内置 例程是 DB2 琐细附带的。它们是在 SYSIBMSYSPROCSYSFUNSYSTOOLS 之类的琐细形式中定义的。
    • 有源 例程仅合用于函数。有源函数复制另一函数的语义。
    • 内部 例程应用内部编程措辞完成。可鄙人列撑持措辞中斥地例程:
      • Java™ 措辞
      • C/C
      • .NET
      • OLE(仅合用存储历程)
      • OLE DB(仅合用表函数)
    • SQL 例程应用 SQL Procedural Language (SQL PL) 完成。DB2 SQL PL 是 SQL Persistent Stored Modules (SQL/PSM) 措辞范例的子集。此范例是构造化编程措辞的根基,将后者与 SQL 一同应用可编写存储历程、函数和举措。它连系了 SQL 数据会晤的便利性与复杂编程措辞的流控制构造。这等于 SQL PL 如斯盛行的主要原因。





    回页首



    存储历程、函数和举措

    存储历程 是包括一些挨次的数据库工具,这些挨次公用于会晤和点窜一个或多个表中数据。在存储历程中,可将多个 SQL 语句与流逻辑包装在一同。它们用作客户机运用挨次或其他例程的子例程扩展。它们在相干数据库办理琐细 (RDBMS) 的控制下执行和办理。

    函数 是可自定义的 SQL 扩展。可在 SQL 语句(如 select-listFROM 子句)中调用它们。有以下四种范例的函数:集聚标量

    存储历程经常用于封装复杂运用挨次逻辑以及执行大批数据库操纵,譬喻多表毗连和游标操纵。另一方面,函数(尤其是 SQL 函数)经常包括较为复杂的操纵。SQL 函数中编码的语句扩展到援用该函数的 SQL 语句,并议决此语句执行。这就招致了语句在执行时静态编译。要是 SQL 语句中应用了复杂的 SQL 函数,则 DB2 需求额外的资原本编译该语句并天生数据会晤企图。这或许影响运转时的总体机能。

    举措 封装了一些逻辑,这些逻辑为包括一个或多个指定属性的构造化范例提供行为,其中每个属性均拥有其本人的数据范例。





    回页首



    DB2 特有的注册项:CURRENT PATH

    与大大都 DB2 数据库工具一样,无缺的例程名包括形式和例程名。本教程中前面引见的 DB2 特有的注册项 CURRENT SCHEMA(鄙人面的结果为 “DB2 特有的注册项:CURRENT SCHEMA ” 的局部也接洽过),为大大都数据库工具阐明形式,但例程除外。DB2 改为应用特有的注册项 CURRENT PATH 来定位例程。

    可应用以下命令获得 CURRENT PATH 设置:

    VALUES CURRENT PATH
    


    默许路子包括三种琐细形式,前面是往后毗连到数据库的用户。比喻:

    "SYSIBM"、"SYSFUN"、"SYSPROC"、"DB2ADMIN"
    


    下面是几个可用于更新 PATH 的才力示例:

    清单 5. 更新 PATH:示例 1

                        SET PATH=CURRENT PATH,"USER2"
    VALUES CURRENT PATH
    ------------------------------
    "SYSIBM","SYSFUN","SYSPROC","DB2ADMIN","USER2"
    1 record(s) selected.
    



    清单 6. 更新 PATH:示例 2
                        SET PATH=SYSTEM PATH,"USER2"
    VALUES CURRENT PATH
    ------------------------------
    "SYSIBM","SYSFUN","SYSPROC","USER2"
    1 record(s) selected.
    



    清单 7. 更新 PATH:示例 3
                        SET PATH="USER1","USER2","USER3"
    VALUES CURRENT PATH
    ------------------------------
    "USER1","USER2","USER3"
    1 record(s) selected.
    





    版权声明: 原创作品,容许转载,转载时请务必以超链接体式格局标明文章 原始出处 、作者信息和本声明。否则将穷究法令责任。

  • 相关阅读:
    68
    56
    Django manager 命令笔记
    Django 执行 manage 命令方式
    Django 连接 Mysql (8.0.16) 失败
    Python django 安装 mysqlclient 失败
    H.264 SODB RBSP EBSP的区别
    FFmpeg—— Bitstream Filters 作用
    MySQL 远程连接问题 (Windows Server)
    MySQL 笔记
  • 原文地址:https://www.cnblogs.com/zgqjymx/p/1972878.html
Copyright © 2011-2022 走看看