postgresql - 将数据库 oracle 迁移到 postgresql:过程
问题描述
我们将把数据库从 Oracle 迁移到 PostgreSQL。
我是 PostgreSQL 的新手。我们有一个这样的程序:
CREATE OR REPLACE PROCEDURE USPX_TEST (NAME IN VARCHAR2,cb_results_cursor OUT SYS_REFCURSOR) IS
BEGIN
OPEN cb_results_cursor FOR
SELECT * FROM EMPLOYEES WHERE EMP_NAME = NAME;
END USPX_TEST;
请告诉我如何在 postgreSQL 中转换这个相同的过程。
注意:我们需要使用 out 参数在游标中返回结果
提前致谢...
解决方案
要在 Postgres 中返回结果,请使用函数,而不是过程:
CREATE OR REPLACE function USPX_TEST (NAME IN VARCHAR2)
returns setof employees
as
$$
SELECT * FROM EMPLOYEES WHERE EMP_NAME = NAME;
$$
language sql;
像桌子一样使用它:
select *
from USPX_TEST('Zaphod');
推荐阅读
- python - 如何删除分隔符;并从列中删除重复值
- javascript - 如何仅在 reactjs 中将类添加到单击的元素?
- android - PolyUtil方法可以在前台服务中执行吗
- react-admin - 在下面添加列表
场地 - javascript - 通过在 javascript/jquery 中对 arraylist 进行排序来对 json 进行排序
- mysql - 在 Cloud SQL 中使用 LOAD DATA INFILE 和 SELECT INTO OUTFILE
- c# - 带有 Protobuf 序列化的 WCF:忽略要序列化的属性 [ProtoIgnore] 时,是否需要显式标记 [DataMember]?
- c++ - Visual Studio 2015 C++ 解决方案 can't see svn exe in system PATH
- python - Store images into multiply array and use it to train model
- javascript - 使用 Strophe.js 解析 XML websocket 响应