Estou desenvolvendo um roteiro muito longo. Gostaria de dividir o script em scripts menores e mais gerenciáveis e incluir cada arquivo sql em um arquivo mestre, depois apenas executar o arquivo mestre.
exemplo: master.sql
conteúdo (não sei a sintaxe a ser usada):
file1.sql
file2.sql
file3.sql
Encontrei vários tutoriais sobre o uso psql -f
na linha de comando e \i
para incluir esses arquivos, mas a preferência aqui é evitar o terminal e usar uma GUI para gerenciar meu banco de dados e executar o master.sql
script.
Isso é possível em qualquer GUI de administração do postgres? Presumivelmente, não está no pgAdmin.
postgresql
psql
jbits
fonte
fonte
psql -f master.sql
).Respostas:
Um
psql
scriptUm script psql pode indexar vários arquivos, vamos supor
01_mydb.psql
, está no diretório de trabalho atual e você tem um diretório01
que possui os arquivos01_schema.sql
e02_types.sql
.01_mydb.psql
pode ser assim.Ou como você deseja estruturá-lo. Se as coisas ficarem mais complexas e precisarem de mais ordem, adicione mais subdiretórios
Então você iria apenas ..
01
, algo como./01/10_tables.psql
01_mydb.sql
Vou mostrar o segundo método usando
find
,Usando
find
para gerar um script de carregamento principal.Vamos em frente e criar essa estrutura.
Aqui estão os comandos que usamos para criá-lo.,
Agora você pode usar
find
para gerar um script de carregamentoAgora apenas corra
master.psql
;fonte