【问题标题】:Stored Procedure - flowchart layout存储过程 - 流程图布局
【发布时间】:2013-08-23 02:48:54
【问题描述】:

我有一个有效的存储过程代码,它从 SAMPLE 数据库中调用一个表。 但我现在的问题是我对如何将其制作成流程图感到困惑,因为条件在 SELECT 语句本身内。

CREATE PROCEDURE TAXDUE ()

    DYNAMIC RESULT SETS 1
    LANGUAGE SQL

BEGIN

    DECLARE display CURSOR WITH RETURN TO CLIENT FOR     
        SELECT EMPNO, LASTNAME, SALARY,
                   CASE 
                     WHEN SALARY < 15001 THEN SALARY 
                     WHEN SALARY BETWEEN 15001 AND 22000 THEN SALARY * 0.05
                     WHEN SALARY BETWEEN 20001 AND 32000 THEN (SALARY * 0.07) + 125
                     WHEN SALARY BETWEEN 32001 AND 45000 THEN (SALARY * 0.10) + 200
                     ELSE SALARY
                   END AS "TAX DUE"          
        FROM EMPLOYEE 
        WHERE WORKDEPT IN ('A00', 'B01', 'C01');

    OPEN display;

END    

如何将其布局到流程图中?我可以想象它从来没有尝试过使用包含条件的 SELECT 语句制作流程图。

【问题讨论】:

  • SQL 只是 结构化查询语言 - 许多数据库系统使用的语言,但不是数据库产品...诸如存储过程之类的东西高度特定于供应商 - 所以我们真的需要知道您正在使用什么数据库系统(以及哪个版本)(请相应地更新标签)....
  • 我只想知道如何制作流程图。我正在使用 IBM DB2 v9.5 和 Data Studio v3.2

标签: sql select stored-procedures db2 flowchart


【解决方案1】:

SQL 是一种声明性语言。

您指定什么,而不是如何获得它。因此,您无法真正绘制一条 SQL 的流程图,因为“流程”完全是关于如何实现某事的。

您可以运行“解释”来查看此时 RDBMS 是如何检索此数据库上的数据的,但 RDBMS 是善变的,并且经常更改其访问路径。

【讨论】:

  • 感谢您的信息。我只是即兴创作了自己的流程图来解释我的代码。
猜你喜欢
  • 1970-01-01
  • 2016-08-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-06
  • 1970-01-01
  • 1970-01-01
  • 2023-04-05
相关资源
最近更新 更多