postgresql 和操作系统以及外部应用的集成

宏哥 发布于 2012/07/01 22:48
阅读 632
收藏 1

Postgresql 可以通过存储过程或者trigger直接呼叫 Python 的代码.

可以非常方便的集成外部应用. 

@mark35 , @一千年前的人

范例代码, 演示输出一个小时之后的时间

 

CREATE OR REPLACE FUNCTION test()

  RETURNS character varying AS

$BODY$DECLARE

v_inter interval;

v_in integer;

v_rs varchar;

BEGIN

v_in :=1;

v_inter :=  v_in || ' hour';

v_rs := current_timestamp + v_inter;

return v_rs;

END;$BODY$

  LANGUAGE plpgsql VOLATILE

  COST 100;

ALTER FUNCTION test()

  OWNER TO postgres;


加载中
1
宏哥
宏哥

为了表现排版,用截图来显示代码:

0
一千年前的人
一千年前的人

1    确实是一个很好的技巧。  Oracle 和 MS SQL 不知道有类似的机制吗...

2    请教宏哥一个问题,Python 开发客户端程序效果怎么样, 方便吗

0
mallon
mallon
也在看PG,看看能不能为以后的工作带来便利
0
宏哥
宏哥

引用来自“一千年前的人”的答案

1    确实是一个很好的技巧。  Oracle 和 MS SQL 不知道有类似的机制吗...

2    请教宏哥一个问题,Python 开发客户端程序效果怎么样, 方便吗

1: Oracle 也有类似机制. Mssql 我没有了解过.

2: Python 开发客户端程序,只能算一般, 方便性还可以. 简单的程序用python开发效果不错. 开发效率,在网络方面不错,在UI方面, 应该和Delphi这类工具差距非常远.

0
宏哥
宏哥

引用来自“mallon”的答案

也在看PG,看看能不能为以后的工作带来便利

你如果工作当中用oracle 或者mssql,么有太大必要看PG. 

Oracle 和PG 极其相似.

0
mark35
mark35

例子里面没看到有对python的调用啊~

另外,可以调用php的代码么

0
宏哥
宏哥

引用来自“mark35”的答案

例子里面没看到有对python的调用啊~

另外,可以调用php的代码么

我代码贴错了,的确不是python的代码,我重新贴一段.

PS: https://github.com/commandprompt/PL-php

 

0
宏哥
宏哥
@mark35 , @一千年前的人 , 帖子中代码贴错了,用一个简单的hello world 演示一下:

CREATE OR REPLACE FUNCTION x.pyhelloworld()
  RETURNS character varying AS
$BODY$
str = 'Hello world'
return str
$BODY$
  LANGUAGE plpython3u VOLATILE
  COST 100;
ALTER FUNCTION x.pyhelloworld()
  OWNER TO postgres;



宏哥
宏哥
回复 @mark35 : 下面给一个更复杂的例子.
宏哥
宏哥
回复 @mark35 : 我是按照排版,没有测试过不按照排版的情况.
mark35
mark35
这个就是用py来写的pg过程吧,不知道是否也需要按照py的排版缩进规则来写呢
0
汉唐风云

引用来自“宏哥”的答案

引用来自“mallon”的答案

也在看PG,看看能不能为以后的工作带来便利

你如果工作当中用oracle 或者mssql,么有太大必要看PG. 

Oracle 和PG 极其相似.

@宏哥 

淘宝的去IOE,为什么不选用pg?

0
宏哥
宏哥

引用来自“汉唐风云”的答案

引用来自“宏哥”的答案

引用来自“mallon”的答案

也在看PG,看看能不能为以后的工作带来便利

你如果工作当中用oracle 或者mssql,么有太大必要看PG. 

Oracle 和PG 极其相似.

@宏哥 

淘宝的去IOE,为什么不选用pg?

因为淘宝去不了 O, 所以他们没有必要用PG. license费用对他们来说不算什么.

只要 淘宝在核心系统离不开 O, 在外围去部分O 不会给他们省license 费用. 这是客户定价模式决定的.

目前看到的关于 去O的传说, 基本上都是:

滚蛋的"Mysql大牛" -- 真是太讽刺了. 这些准备在TB干掉O 的大牛,都被TB干掉了.

从来没有滚蛋的"Oracle 大牛" 发表意见 --- 因为根本不需要滚蛋, 如果淘宝在核心系统,去O, 所有人都必须滚蛋.

 

宏哥
宏哥
回复 @mark35 : 所以那只是一个口号, 一个失败小群体的口号.
mark35
mark35
核心系统即便要去O也不可能用mysql代替吧。那么大交易量,出了问题不敢想象。如果不用pg替代O,那么也就只有选其他商业DB,这时候同样需要授权费用,那去不去O又有什么意义呢
返回顶部
顶部