Gerar arquivos CSV no postgresql
Publicado por Fernando Zank Correa Evangelista 30/01/2006
[ Hits: 11.259 ]
O script conecta no banco de dados e gera uma arquivo no formato CSV de acordo com a query que é passada para o script.
Segue um manual de uso.
Melhorias, dúvidas e alterações favor entrar em contato pelo mail fernandozank@gmail.com []'s
Manual do script Selecione uma das opções 1. Conectar com paramêtros [SCRIPT.SQL][ARQUIVO.CSV][HOST][BASE_DO_BD] 2. Conectar com paramêtros [SCRIPT.SQL][ARQUIVO.CSV][HOST][BASE_DO_BD][CARACTER_SUBSTITUICAO] 3. Conectar com paramêtros [SCRIPT.SQL][ARQUIVO.CSV][HOST][BASE_DO_BD][USUARIO][SENHA] 4. Conectar com paramêtros [SCRIPT.SQL][ARQUIVO.CSV][HOST][BASE_DO_BD][CARACTER_SUBSTITUICAO][USUARIO][SENHA] 5. Help 6. Sair do script onde : SCRIPT.SQL Corresponde a um script sql válido para gerar os dados de saída. ARQUIVO.CSV Corresponde ao nome do arquivo com a extensão csv. HOST Corresponde ao host do banco de dados. BASE_DO_BD Corresponde ao nome da base do banco de dados. USUARIO Corresponde ao usuário da base do banco de dados. SENHA Corresponde a senha do usuário no banco de dados. CARACTER_SUBSTITUICAO Corresponde ao caracter que foi usado na query para substituir o caracter("), o padrão é caracter (¢) perguntas do script: As perguntas variam de acordo com os parâmetros selecionados: -Perguntas relacionadas ao parametro [SCRIPT.SQL] #ver detalhes da query usada para gerar os arquivos CSV 1 -"Digite o nome arquivo com o script sql a ser carregado:" corresponde ao script sql usado para gerar os dados, ou seja este script deverá ter uma query sql. ex: /home/user/sqls/consulta.sql 2 -"Seu script sql possui sequencia( Ex: CREATE SEQUENCE ...) ? [s/n]:" Digite s se exister seu script sql estiver criando e deletando uma sequencia ou Digite n se exister seu script sql não utilizar sequência # Exemplo de query para gerar arquivos CSV atráves do POSTGRESQL esta query sql poderia ser usada no arquivo /home/user/sqls/consulta.sql ___________________________________________________________________________________________________________________________ create sequence cod_item start 1; --criação da sequência select nextval('cod_item') as cod_item ,trim('"'||translate(m01_descr1,'"' ,'¢'))||'"') as descricao ,m01_estmin as estoque_minimo ,m01_estmax as estoque_maximo ,m01_pontop as ponto_pedido from mater; drop sequence cod_item; --Drop na sequência ___________________________________________________________________________________________________________________________ *verifique que na query acima foi criada uma sequencia e após a query a sequencia foi apagada(ver pergunta 2 ). |IMPORTANTE| *para todos os CAMPOS TEXTO é necessário fazer a substituição do caracter " por outro caracter. no exemplo acima -> translate(m01_descr1,'"' ,'¢')) substituindo todos caracteres(") pelo caracter(¢). -utilizado pelo parâmetro [CARACTER_SUBSTITUICAO] *para todos os CAMPOS TEXTO é necessário concatenar o caracter(") do campo texto e depois do campo também, devido ao padrao do formato CSV. no exemplo acima usamos o '"' || para concatenar -> '"'||translate(m01_descr1,'"' ,'¢'))||'"' ___________________________________________________________________________________________________________________________ -Perguntas relacionadas ao parametro [ARQUIVO] 1 -"Digite o nome arquivo de saida (arquivo.csv): " Este arquivo corresponde ao arquivo de saída do script ex: /home/user/CSV/arquivo.csv -Perguntas relacionadas ao parametro [HOST] 1 -"Digite o host do banco de dados:" Corresponde ao paramêtro -h do BD POSTGRESQL ex: 10.27.68.123 -Perguntas relacionadas ao parametro [BASE_DO_BD] 1 -"Digite a base do banco de dados:" Coresponde a base do BD POSTGRESQL ex: municipio -Perguntas relacionadas ao parametro [CARACTER_SUBSTITUICAO] 1 -"Digite o caractere de substituição utilizado na query:" Corresponde ao caracter utilizado na substituição do caracter(") na sua sql, ver arquivo de exemplo de [SCRIPT.SQL] -Perguntas relacionadas ao parametro [USUARIO] 1 -"Digite o usuário do banco de dados:" Corresponde ao nome do usuário do BD POSTGRESQL -Perguntas relacionadas ao parametro [SENHA] 1 -"Digite a senha do banco de dados:" Corresponde a senha do usuário do BD POSTGRESQL #Desenvolvedor Fernando Zank Correa Evangelista #fernandozank@gmail.com
Implementando Statement e RecordSet em bash script
DNS dinâmico noip2 para systemd
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Aplicativo simples para gravar tela
Quebra de linha na data e hora no Linux Mint
Firefox não abre em usuário não administradores (0)
Sempre que vou baixar algum pacote acontece o erro dpkg (8)
tentando instalar em um notebook antigo o Linux LegacyOS_2023... [RESO... (8)
Problema com Conexão Outlook via Firewall (OpenSUSE) com Internet Fibr... (5)