25th Jun 2024 7 minutos de leitura Como importar CSVs para o PostgreSQL usando o pgAdmin Jakub Romanowski sql aprender sql postgresql Índice O que é um arquivo CSV? Por que importar arquivos CSV para um banco de dados? PostgreSQL e pgAdmin Como importar CSVs para o PostgreSQL 1. criar uma tabela no pgAdmin 2. Importar o arquivo CSV Bem, importar um arquivo CSV para um banco de dados Postgres foi fácil! Você trabalha com dados e usa arquivos CSV? Aqui está um guia prático sobre como importar esses arquivos para um banco de dados PostgreSQL usando o pgAdmin, um dos melhores editores PostgreSQL do mercado. Vamos começar a importar CSVs para um banco de dados Postgres. Começaremos explicando o que é um arquivo CSV e, em seguida, apresentaremos o pgAdmin e mostraremos como fazer o processo de importação. Não se preocupe - é fácil! O que é um arquivo CSV? CSV é a abreviação de comma-separated values (valores separados por vírgula). É um formato para armazenar dados em arquivos de texto. Esse padrão é suportado por muitos aplicativos e programas, inclusive o Microsoft Office, o LibreOffice e o Google Sheets. Por que importar arquivos CSV para um banco de dados? Quando os arquivos CSV são usados? A transferência de dados de um programa ou plataforma para outro é um dos principais usos. Imagine que você precise exportar dados de um banco de dados para uma planilha ou vice-versa. Os CSVs são a maneira mais segura de salvar seus dados; eles são lidos por quase todas as suítes de escritório e sistemas de gerenciamento de banco de dados (DBMSs). Além disso, os CSVs são arquivos de texto e, portanto, são bem pequenos; a transferência até mesmo de grandes conjuntos de dados não é um problema. Essa é uma grande vantagem de usar CSVs. Dê uma olhada nas diferenças entre armazenar dados em uma tabela e armazená-los em um CSV. Aqui está uma tabela chamada characters. Gostaria de saber se você reconhece os dados que coloquei nela. IDfirst_namelast_namefamily 1JohnSnowTargaryen 2AryaStarkStark 3TyrionLannisterLannister Aqui estão as mesmas informações no formato CSV: ID,first_name,last_name,family 1,John,Snow,Targaryen 2,Arya,Stark,Stark 3,Tyrion,Lannister,Lannister Esse é um conjunto de dados muito pequeno, mas você pode imaginar como seria com muitas colunas e milhares de linhas. Acho que você entendeu os usos e as vantagens dos CSVs, então vamos passar para a ferramenta que usaremos para importá-los: pgAdmin. PostgreSQL e pgAdmin Há algum tempo, meu amigo Ignacio mostrou a você como instalar e configurar o PostgreSQL no Windows 10. Se você leu esse artigo, sabe que o Postgres é fácil de configurar e é um dos DBMSs mais populares do mundo. Há vários editores SQL diferentes no mercado que oferecem suporte ao PostgreSQL. Eu me acostumei com o pgAdmin e, sinceramente, não vejo sentido em mudar para outro. É uma ótima ferramenta que nunca me deixou na mão. O que é o pgAdmin? É um programa gráfico de gerenciamento de banco de dados PostgreSQL. Sua versão mais recente é o pgAdmin 4. Ele pode ser usado no Linux, Unix, macOS ou Windows e, por ser de código aberto, é gratuito. Esse será um argumento importante para muitas pessoas. A funcionalidade completa e a ausência de taxas tornam o pgAdmin perfeito para mim. E talvez para você também. O PgAdmin permite administrar bancos de dados e suas réplicas, criar todos os objetos de banco de dados, emitir consultas e analisar o plano de consulta (apresentado em formato clássico ou gráfico). Também é possível usar o console clássico para escrever nele. Além disso, há muitas extensões que permitem adaptar livremente o programa às suas necessidades. As alternativas ao pgAdmin incluem DBeaver, Navicat, HeidiSQL e OmniDB. Se você quiser que eu dedique um artigo aos vários editores de SQL existentes - incluindo aqueles para bancos de dados PostgreSQL -, informe-me nos comentários. Presumo que você já tenha o Postgres e o pgAdmin instalados em seu computador e que os tenha configurado adequadamente. Agora podemos ir direto ao ponto e importar alguns dados. Como importar CSVs para o PostgreSQL Vamos voltar ao nosso arquivo characters.csv e tentar importá-lo para o nosso banco de dados por meio do pgAdmin. Há dois métodos e mostrarei a você o que fazer passo a passo. 1. criar uma tabela no pgAdmin Usando a ferramenta de consulta interna do pgAdmin, você pode primeiro criar uma tabela com uma consulta SQL: CREATE TABLE characters (id serial, first_name varchar, last_name varchar, family varchar ); Certifique-se de que as colunas tenham os mesmos nomes e valores que os do arquivo CSV. Em vez de escrever uma consulta SQL, você também pode clicar com o botão direito do mouse em Tables (Tabelas ) na árvore à esquerda. Será exibido um pequeno menu. Selecione Create e, em seguida, Table.... Uma nova janela aparecerá solicitando que você digite um nome para a nova tabela. No nosso caso, será characters. Na mesma janela, clique na guia Columns (Colunas ) e adicione as colunas apropriadas clicando no botão +. Lembre-se de que os nomes das colunas devem corresponder aos do arquivo CSV. Você também precisará especificar o tipo de dados que cada coluna conterá. Se você não souber quais tipos de dados inserir, recomendo que faça o curso LearnSQL.com.br Data Types in SQL . É melhor aprender o básico e evitar cometer erros. Sabemos quais dados queremos incluir em cada coluna, portanto, tudo deve ter a seguinte aparência: Observe que você pode definir a coluna como não NULL e especificar uma chave primária aqui também. Ao clicar em SQL, você pode visualizar a consulta SQL usada para criar a tabela. Por enquanto, não nos preocuparemos com os outros recursos (mais avançados) aqui. Quando terminar, clique em Save (Salvar). Você acabou de criar uma tabela! Se você não a vir na árvore, clique com o botão direito do mouse em Tables (Tabelas ) e selecione Refresh (Atualizar). Ela deverá aparecer. 2. Importar o arquivo CSV Novamente, você pode usar a Query Tool e digitar uma consulta SQL. Use a instrução COPY para isso: COPY characters FROM 'C:\a\characters.csv' DELIMITER ',' CSV HEADER; Na primeira linha, digite o nome de sua tabela. Na segunda linha (após a cláusula FROM ), digite o caminho para o arquivo. No meu caso, é a unidade C e a pasta a. Importante: você precisa especificar o caractere DELIMITERque é o caractere usado para separar os valores no arquivo CSV. Geralmente é uma vírgula, mas pode ser um ponto e vírgula, um espaço ou qualquer outro caractere. Por fim, use a palavra-chave HEADER para ignorar o cabeçalho (ou seja, a linha que contém os nomes das colunas) ao copiar os dados do CSV. No nosso caso, o resultado é uma mensagem COPY 3. Isso significa que o pgAdmin copiou três linhas para a nossa tabela. Vamos inserir uma consulta simples para verificar se tudo funcionou: SELECT * FROM characters; É claro que, como no caso da criação de uma tabela e da importação de dados de um arquivo CSV, podemos ignorar a consulta e usar o próprio programa. Para fazer isso, basta clicar com o botão direito do mouse em sua tabela na árvore à esquerda e selecionar o item de menu Import/Export.... Será exibida uma janela com o controle deslizante definido como Importar. Em seguida, selecione o arquivo de origem e defina o formato como CSV. Defina o Cabeçalho como Sim se o arquivo tiver um cabeçalho. A única coisa que resta é selecionar o delimitador (geralmente uma vírgula). Sua janela deve ser semelhante a esta: Quando você clicar em OK, os dados serão importados. E sua tabela está pronta! Agora você pode escrever consultas SQL e analisar dados, combinar dados de outras tabelas, etc. Bem-vinda ao outro lado do espelho, Alice! Você seguiu o Coelho Branco com sucesso. Bem, importar um arquivo CSV para um banco de dados Postgres foi fácil! É assim que é simples importar dados de um arquivo CSV para um banco de dados PostgreSQL com o pgAdmin. Há duas maneiras de fazer isso: usando o próprio programa e usando SQL na ferramenta Query Tool e a instrução COPY. Eu uso o pgAdmin porque ele é uma ótima ferramenta para trabalhar com o PostgreSQL. Qual IDE você está usando? Conte-nos nos comentários. Se você for totalmente iniciante no PostgreSQL, recomendo que faça nosso curso SQL para Iniciantes in PostgreSQL ou SQL de A a Z in PostgreSQL (a trilha principal desse dialeto). Esses são cursos de SQL brilhantes e interativos que ensinarão tudo o que você precisa para trabalhar de forma eficaz com bancos de dados. Não fique para trás; o mundo está apostando no PostgreSQL, inclusive muitas grandes empresas. Por que não experimentá-lo? Tags: sql aprender sql postgresql