需要在postgresql中的不同会话中使用一个临时表

时间:2018-01-17 06:14:51

标签: postgresql psql postgresql-10

在postgresql函数中创建了一个临时表。  然后从我的屏幕调用此功能来保存一些业务逻辑,这个屏幕是多用户的,多个用户可以从不同的2个客户端机器访问它,然后想知道这个临时表可以用在其中。

create temporary table temp_test
( id int, name text) on commit drop;
  

在函数fn_test()中使用此脚本创建它并在其中插入记录。如果多用户将访问此屏幕/代码,那么它将工作与否?

1 个答案:

答案 0 :(得分:3)

临时表是特定于会话的。因此,如果用户创建了它,则只有该用户才能看到表内容,直到会话过期。 即使临时表由一个用户创建,也没有其他用户可以通过选择表来查看表内容。这会有所帮助

What is the scope of a PostgreSQL Temp Table?

最好创建一个简单的表,所有其他具有不同会话的用户都可以访问该表。在工作结束时,您可以从函数

中删除表