注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

还东国的博客

行之苟有恒,久久自芬芳

 
 
 

日志

 
 

PowerDisigner15使用手记之七——PDM中的存储过程和函数  

2013-11-01 10:04:20|  分类: 数据库技术 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

PowerDisigner15使用手记之七——PDM中的存储过程和函数

 

以前想谈谈存储过程和函数,但是一直没有机会,今天正好有这个时间,写一下在使用PD设计PSQL中的函数(POSTGRESQL没有存储过程这个概念)。

PD的菜单“MODEL”下拉的列表中,点击“procedures”或者在工具面板中直接点击“存储过程”的界标,会弹出对话框,在第一个TAB中设置名字,下面显示的第二个TAB页。

PowerDisigner15使用手记之七——PDM中的存储过程和函数 - 还东国 - 还东国的博客
 

在这里可以直接书写自己的存储过程或者函数,区别是在上面的变蓝的下拉框中,选择是二者中的哪一个,或者直接在下面的语句中设定。

CREATE FUNCTION GetPersonRec ( in personID char(16), in cardID char(16))

    RETURNS dataset V_PersonRec

    AS

    $$

    select Person_perosnID,name,cardID,departName,disableTime,recLogID,

    recogTime,atPostion,devSN from V_PersonRec

    where Person_personID=personID or V_PersonRec.cardID = cardID

    $$

LANGUAGE sql

 

create or replace function f_get_employee_query()

returns setof employee

as

$$

begin

return query select * from employee;

end;

$$

language plpgsql;

再看两个PSQL帮助上的例子:

CREATE FUNCTION add_em (IN x int, IN y int, OUT sum int)

AS 'SELECT x + y'

LANGUAGE SQL;

 

SELECT add_em(3,7);

 add_em

--------

     10

(1 row)

 

CREATE TYPE sum_prod AS (sum int, product int);

 

CREATE FUNCTION sum_n_product (int, int) RETURNS sum_prod

AS 'SELECT $1 + $2, $1 * $2'

LANGUAGE SQL;

抛砖引玉,有什么不妥的地方,希望大家不吝赐教。

  评论这张
 
阅读(505)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017