Postgresql临时表
来源:互联网 发布:家庭相册制作软件 编辑:程序博客网 时间:2024/06/18 00:29
PostgreSQL支持两类临时表,会话级和事务级临时表。在会话级别的临时表中,在整个会话的生命周期中,数据一直保存。事务级临时表,数据只存在于这个事务的生命周期中。不指定临时表的属性,
PostgreSQL中,不管是事务级还是会话级临时表,当会话结束时,临时表就会消失。这与oracle数据库不同,在oracle数据库中,只是临时表中的数据消失,而临时表还存在。
示例:
创建临时表temp
使用其他会话查看临时表,可以看到查询不到临时表temp
使用“pg_temp_5.temp”可以查询到temp的信息
关闭创建临时表的会话,使用另一个会话再次查看,表已经被删除。
创建临时表,当前会话可以正常访问临时表中数据
使用另一个会话查询该临时表中的数据,不能查询数据
如果在两个不同的session中创建一个同名的临时表,实际上创建的是两张不同的表。
使用另一会话创建同名临时表 ,示例如下:
创建事务级临时表,示例如下
总结
PostgreSQL临时表是schema下所生成的一个特殊的表,这个schema的名称为“pg_temp_n”,其中n代表数字,不同的session数字不同。
一个会话创建的临时表不能被其他会话访问。
默认情况下,创建的临时表是会话级的,如果需要创建事务。需要添加“on commit delete rows”子句。(注:“on commit”子句形式有三种:“on commit preserve rows”,默认值,会话级;“on commit delete rows”,事务级,事务结束,删除数据;“on commit drop”,事务级,事务结束,删除临时表)
创建临时表的关键字“temporary”可以缩写为“temp”。
PostgreSQL为了与其他数据库创建临时表的语句保持兼容,还没有“GLOBAL”和“LOCAL”关键字,但两个关键字没有用处。
- PostgreSQL 临时表
- PostgreSQL WITH 临时表
- Postgresql临时表
- postgresql 创建数据表。临时表
- 【PostgreSQL-9.6.3】临时表
- postgresql 临时表空间及注意事项
- temporal_tables, PostgreSQL扩展的临时表
- PostgreSQL临时表保留在当前session中,退出session临时表自动删除
- Postgresql中临时表(temporary table)的特性和用法
- 临时表空间&临时表&临时段
- 临时表
- 临时表
- 临时表
- 临时表
- 临时表
- 临时表
- 临时表
- 临时表
- HDOJ 2734 Quicksum
- java对象 声明 初始化 =null new() 总结
- 【Unreal Engine 4】虚拟试衣镜
- 苹果明年推出跨平台应用,同时在 iPhone、Mac 上运行
- 使用AcDbEntity的Explode方法后分解对象的删除
- Postgresql临时表
- pat甲级1012-The Best Rank
- 剑指offer 编程题(28):最小的K个数
- PostgreSQL的约束
- <剑指offer 面试题2> 单例模式 (Java实现)
- Python--小甲鱼学习笔记--第27课:集合(set()、frozenset())
- 讲一次完整的产品迭代过程的各个阶段
- PostgreSQL角色和权限
- Android动态申请权限