search_path如何影响标识符解析和“当前模式”


问题内容

是否可以定义默认情况下在哪个架构中创建新表?(由“不合格的表名”引用。)

我已经在Postgres中看到了有关使用“搜索路径”的一些详细信息,但是我认为它仅在检索数据而不是创建时才起作用。

我有一堆SQL脚本,它们创建许多表。我不想修改脚本,而是希望在默认模式下将数据库创建表设置为特定的模式-当它们具有非限定名称时。

这可能吗?


问题答案:

搜索路径的确是您想要的:

% create schema blarg; % set search_path to blarg; % create table foo (id int); % \d List of relations Schema | Name | Type | Owner --------+------+-------+------- blarg | foo | table | pgsql