更改用户的默认架构 [英] Change default schema for user

查看:112
本文介绍了更改用户的默认架构的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

create schema bla;

-- then create table table_name into this schema

然后我要更改用户的默认架构(用户为 postgres

Then I want change default schema for user (user is postgres)

我这样做: ALTER ROLE postgres SET search_path TO bla; (查询成功返回,没有结果)。

I do: ALTER ROLE postgres SET search_path TO bla; (Query returned successfully with no result).

当我尝试 SELECT * FROM table_name 给出错误关系表名不存在

尽管 SELECT * FROM bla.table_name 可以正常工作。

尝试更改用户的默认架构有什么问题?

What is wrong in my attempt to change default schema for user?

推荐答案

我认为您需要为此重新登录。使用 ALTER USER ... SET 您更改

I think you need to relogin for that. With ALTER USER ... SET you change


运行时配置变量的会话默认值

Session defaults for run-time configuration variables

也来自 ALTER ROLE SET 手册


角色专用变量设置生效仅在登录时;

Role-specific variable settings take effect only at login;

但不要将更改应用于当前会话。如果要立即更改,请使用:

But don't apply changes to current session. If you want immediate change use:

SET search_path TO bla;

它将更改会话级别的路径

It will change path on session level

这篇关于更改用户的默认架构的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆