Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the breadcrumb-navxt domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/devtools/public_html/blog/wp-includes/functions.php on line 6131

Deprecated: A função WP_Dependencies->add_data() foi chamada com um argumento que está obsoleto desde a versão 6.9.0! Os comentários condicionais do IE são ignorados por todos os navegadores compatíveis. in /home/devtools/public_html/blog/wp-includes/functions.php on line 6131
Alterar Schema de Tabela no PostgreSQL

Alterar Schema de Tabela no PostgreSQL

código sql de criação de tabela

Em sua configuração original, quando criamos uma tabela (ou qualquer outro objeto) no PostgreSQL sem especificar o schema que ela deve ficar, automaticamente o PG irá cria-lá no schema public.

Caso você necessite alterar o schema de suas tabelas, você pode realizar um alter table, através da seguinte instrução SQL:

 ALTER TABLE SCHEMA.SUA_TABELA SET SCHEMA NOME_SCHEMA_DESTINO;  

No exemplo, aponto o schema qual a tabela esta atualmente, desta forma posso estar conectado a qualquer schema dentro do mesmo banco de dados que conseguirei realizar a mudança.

Ficou com alguma dúvida? Posta ela nos comentários, ou veja se ela já não esta respondida:


Perguntas Frequentes

Ao mover a tabela, os índices e triggers também são movidos?
Somente os índices são movidos, os triggers não. Neste caso, você pode cria-los no novo schema e, posteriormente dropa-los no schema anterior.

Ao mover uma tabela que contém relação com outra no schema origem, como fica a foreign key?
O PostgreSQL interpreta a ação e, aponta a foreign key para o schema onde esta a tabela relacionada, mas recomendo ter prudência quando existir relação na tabela a ser alterada.

Tem como mudar o schema padrão de public para outro qualquer?
Sim, você terá que alterar a variável search_path, veja como fazer isto aqui.

Deixe um comentário