on commit drop

  • 结论

    • on commit drop只能在创建临时表的时候使用
    • 使用该参数创建的临时表只能在同一个事务中访问
    • 不带该参数的临时表可以在同一个回话中被访问
  • 实例代码
imos=# create temp table test as select generate_series(1,10);
SELECT 10
imos=# drop table test;
DROP TABLE
imos=# create temp table test on commit drop  as select generate_series(1,10);
SELECT 10
imos=# select * from test;
ERROR:  relation "test" does not exist
LINE 1: select * from test;^
imos=#
imos=#
imos=# create temp table test   as select generate_series(1,10);
SELECT 10
imos=# select * from test;generate_series
-----------------12345678910
(10 rows)imos=#
imos=#
imos=#
imos=#
imos=#
imos=# begin;
BEGIN
imos=# create temp table test1 on commit drop as select generate_series(1,10);
SELECT 10
imos=# select * from test1;generate_series
-----------------12345678910
(10 rows)imos=# commit;
COMMIT
imos=# select * from test1;
ERROR:  relation "test1" does not exist
LINE 1: select * from test1;^

PG创建临时表时添加on commit drop参数相关推荐

  1. 禁止windows系统创建快捷方式时添加文字“- 快捷方式”

    转载自如何禁止windows系统创建快捷方式时添加文字"- 快捷方式",仅作学习交流使用 如何禁止windows系统创建快捷方式时添加文字"- 快捷方式" 20 ...

  2. 使用MySQL数据库创建表时添加外键约束

    /题目:创建表Book表,字段如下: bid整型,要求主键 bname学符型,要求设置唯一键,并非空 price浮点型,要求有默认值10 btypeId 类型编号,要求引用bookType表的id字段 ...

  3. sql Server 创建临时表 嵌套循环 添加数据

    1 begin 2 3 --通过销货单与明细,生成安装项目及明细,及判断明细是否拆分生成多条 4 --delete from sazxm 5 --delete from ssbazrw 6 --获取未 ...

  4. mysql创建表时添加范式_MySql三大范式与数据库设计和表创建常用语句

    [数据库设计的三大范式] 1.第一范式(1NF First Normal Fromate):数据表中的每一列(字段),必须是不可拆分的最小单元.也就是确保每一列的原子性. 例如: userInfo: ...

  5. mysql创建表时添加范式,MySql三大范式与数据库设计和表创建常用语句

    [导读]第一范式1NF First Normal Fromate:数据表中的每一列字段,必须是不可拆分的最小单元.也就是确保每一列的原子性. [数据库设计的三大范式] 1.第一范式(1NF First ...

  6. mysql 过程 临时表_在存储过程mysql中创建临时表

    我有SQL Server的经验.这是我第一次使用mysql.我想在存储过程中创建一个临时表.我不知道我在这里错过了什么. 我想做的是: 循环遍历事件及其匹配项,并将这些匹配项插入到临时表中,然后从该临 ...

  7. MySQL如何创建表时指定约束

    一.MySQL中的约束类型 非空约束(not null): 唯一性约束(unique): 主键约束(primary key)PK: 外键约束(foreign key)FK: (检查约束(目前 ...

  8. mysql 创建临时表权限_有没有更好的方法为MySQL中的临时表分配权限?

    我们的用户以相当低级别的用户身份登录到生产数据库,在数据库级别授予SELECT,并在他们需要访问的特定表上授予INSERT / UPDATE / DELETE. 他们还有权创建临时表(我们需要它们来处 ...

  9. 创建线程时,需要创建的内容

    请参看文献:线程调度,这样就能明白为什么需要有TCB,栈等: 创建线程时,需要初始化的参数: void ThreadCreate(A){TCB *tcb=malloc(); //申请一段内存作为TCB ...

最新文章

  1. JavaScript 函数定义
  2. 大数据人工智能时代,这个行业终于爆发了!
  3. C语言“fread”函数的用法?
  4. hdu 2089 不要62【数位dp】
  5. java importgeopoint_Java GeoPoint.project方法代碼示例
  6. json pandas 内存溢出_pandas中的常用函数
  7. 滴滴App突发Bug:滴滴一下,千元出发
  8. 博文视点程序员读书节,大咖带你共读十日精彩
  9. cobol学习之十数据库的增删改查模板
  10. 100阶乘c语言如何实现,求10000的阶乘(c语言代码实现)
  11. halcon 纹理检测_halcon学习网
  12. [Azure] 取消 或 删除Azure云订阅服务
  13. 微软官网免费下载win10系统
  14. plt.gca()画框及打标签
  15. 忘了neo4j密码怎么办
  16. python是由哪个人创造的文字_秦朝的文字是什么样的?是由谁创造出来的?
  17. 怎么在12306上选择上中下卧铺
  18. NoSQL数据库之MongoDB
  19. Python tkinter库:简易画板(笔、直线、矩形、圆形和橡皮擦工具+导入、保存、撤销、清屏功能)
  20. Jquery实现表格动态增加一行,删除一行(最简洁的代码实现)

热门文章

  1. 哲学初感 ---- 《苏菲的世界》总结
  2. python学习笔记全过程_Python学习过程笔记整理(四)
  3. 2020年节假日JSON,全年日期对应的上班日、周末、节假日
  4. 【科研】ET-BERT代码分析
  5. Android视频播放器ExoPlayer
  6. DB2表空间状态列表
  7. 30个真棒的(免费iPhone,iPad IOS)的GUI 界面设计元素模板 做iphone开发的福音
  8. 记录每天学习的新知识:LiveData
  9. 京区航天研究所 哪些比较好的研究所?
  10. google书签找回