plpgsql – PostgreSQL临时表的范围是什么?
发布时间:2020-12-13 18:11:00 所属栏目:百科 来源:网络整理
导读:我已经google了很多,我有相当不错的阅读理解,但我不明白这个脚本是否可以在我的postgres / postgis框中的多个线程中工作.这是代码: Do$do$DECLARE x RECORD; b int; begin create temp table geoms (id serial,geom geometry) on commit drop; for x in sel
我已经google了很多,我有相当不错的阅读理解,但我不明白这个脚本是否可以在我的postgres / postgis框中的多个线程中工作.这是代码:
Do $do$ DECLARE x RECORD; b int; begin create temp table geoms (id serial,geom geometry) on commit drop; for x in select id,geom from asdf loop truncate table geoms; insert into geoms (geom) select someGeomfield from sometable where st_intersects(somegeomfield,x.geom); ----do something with the records in geoms here...and insert that data somewhere else end loop; end; $do$ 那么,如果我在多个客户端(从Java调用)中运行它,那么geoms临时表的范围会导致问题吗?如果是这样,在PostGres中解决这个问题的任何想法都会有所帮助. 谢谢
你将遇到一个微妙的陷阱,这就是为什么我还没准备好宣布它“安全”的原因是范围是每个会话,但是人们常常忘记丢弃表(因此它们会断开连接).
我认为如果你在完成它之后不需要你的函数后显式删除临时表,你会好得多.这将防止因尝试在同一事务中运行该函数两次而产生的问题. (在提交时你正在放弃) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ruby-on-rails-4 – 设计activeadmin门卫 – 过滤链停止为:
- OpenERP 的XML-RPC的轻度体验+many2many,one2many,many2one
- Vue.js做select下拉列表的实例(ul-li标签仿select标签)
- 【Cocos2d-x】地图滚动算法的实现
- 监听、接收mq消息、写入xml文件
- geoserver + postgis+postgresql+agslib.swc
- 四种生成和解析XML文档的方法详解(介绍+优缺点比较+示例)
- Ruby的attr_accessor是否自动为属性创建实例变量?
- ajax loading code
- TinyXml创建XMl的两种方法,以及属性添加