2021-08-20
oracle存储过程转PG,record兼容问题
oracle部分存储过程代码
…
type dev_record is record(
id varchar2(32),
name varchar2(64));
type t_dev_type is table of dev_record index by binary_integer;
v_temp_type t_dev_type;
v_temp_record_type t_dev_type;
begin
if xxx then
select ‘1’,‘aaa’ into v_temp_record_type from dual;
v_temp_type(v_temp_type.count+1):=v_temp_record_type;
end if;
if yyy then
select ‘2’,‘bbb’ into v_temp_record_type from dual;
v_temp_type(v_temp_type.count+1):=v_temp_record_type;
end if;
for i in 1 … _temp_type.count loop
update tabname set col=‘xxx’ where id=v_temp_type(i).id;
…
end loop;
end;
转换为pg函数时有两个问题
1.PG的record如何追加?
2.多行记录的record如何一行一行取出来用?
我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
回答交流
Markdown
请输入正文
提交
相关推荐
pg中SQL没有过滤条件,在创建索引的时候,还要加个常量吗?
回答 1
我实际测试了MySQL是不需要Oracle这样添加常量也能走索引的。PG可以自己走测试
Oracle数据库备份,一般备份什么格式?
回答 1
已采纳
看你用哪种方式,expdp方式是dmp后缀,rman一般是bkp
pg 中 table的owner 可以是多个用户吗?
回答 1
已采纳
不能,一对一关系
Oracle 19c 安装报错
回答 13
更换正统的centos系列,国产系列有很多软件包版本被更新了
Oracle 触发器没有生效是写错了吗?
回答 1
beforeinsertorupdate改为afterinsertorupdate
pg中索引损坏(有坏块),表还能否正常使用?
回答 4
可以正常使用但是可能会走全表扫影响效率rebuildindex锁表,DML和select都会被锁rebuildindexconcurrentlypostgresl12才的功能createindexco
oracle 中调整字段精度有哪些方法?
回答 1
已采纳
✅oracle调整字段精度的四种方法:调整方式一:(精度只能调大不能调小)altertabletablenameaMODIFY(columnAXXnumber(27,15));调整方式二:(借用一个新
AWR分析报告问题求助:帮忙出一下优化思路
回答 3
GC等待锁等待从sql看也是2个DML消耗最长,建议同一个应用只连RAC的其中一个节点
请教一下,跨版本expdp可以吗?11201要升到19,中间要升好几次。
回答 3
一次搞定,如果高到低需要指定version,如果RAC环境注意clustern;如果12c以上,目标库最好是非归档或者TRANSFORMDISABLEARCHIVELOGGING:YTRANSFORM
postgresql数据库报错:postgresql 9.5 server启动后停止
回答 1
已采纳
这个要具体看日志了。PG另外推荐在linux上源码安装,因为rpm安装都少功能。不建议windows。还有pg都14了,哪怕用13,也别用9了。