importar csv no sqlite3

Discussão em 'Dicas e tutoriais' iniciado por kodo no kami, 20 Julho 2018.

  1. kodo no kami
    Offline

    kodo no kami Membro Conhecido

    Afiliado:
    16 Dezembro 2015
    Mensagens:
    228
    Sexo:
    Masculino
    Avaliações:
    +299 / -0
    Galera nesse tutorial vamos aprender como importar arquivos csv para o sqlite3 usando a linha de comando, a vantagem de voce importar um arquivos csv é a propria consulta dos dados, um arquivo csv a consulta teria que ser feita linha a linha diferente do que ocorre em um banco de dados relacional onde tem as colunas para cada dado. Outra vantagem é a forma como podemos fazer essa consulta, no csv normalmente voce vai caçar em cada linha um determinado trecho sendo que essa busca é feita pela a aplicação, por outro lado no sqlite voce pode usar a linguagem SQL e manipular cada coluna filtrando da forma que bem entender, sem dizer que a propria consulta é trabalho do banco de dados e não da aplicação (no caso a aplicação apenas diz como deve ser feita a busca e manipula o retorno dela). Os arquivos csv são textos puros onde temos um separador a cada dado indicando cada coluna (normalmente é o virgula), a cada nova linha seria uma entidade diferente. No exemplo a baixo temos o id, usuario e o ip de um csv ficticio.

    Código (Forge Crash):
    1,kodo,192.168.1.9
    2,sir.rafiki,192.168.1.6
    3,s1m0n,192.168.1.50
    4,hefest0,192.168.1.47
     
    [​IMG]

    vamos abrir ou criar um novo db com o sqlite3, para isso digitamos sqlite3 seguido do nome do db (caso esse db não exista sera criado um novo)

    Código (Forge Crash):
    sqlite3 kodo.db
    [​IMG]

    agora temos que criar a tabela onde vamos armazenar aquele csv (no meu caso vou chamar a tabela de eofclub por causa dos nomes que vou armazenar nela), essa tabela precisa ter a mesma quantidade de colunas do csv (temos que respeitar os tipos de dados tambem ~ isso melhora a performance do nosso db). Como na primeira coluna daquele csv tem apenas numeros podemos criar uma coluna numerica la, na segunda e na terceira são strings podemos criar uma varchar com tamanhos especificos

    Código (Forge Crash):
    create table eofclub (id integer, nome varchar(50), ip varchar(20));
    [​IMG]

    mudamos o modo para csv, para isso usamos o comando .mode csv. As vezes o arquivo csv esta utilizando um delimitador diferente do virgula, nesse caso usamos tambem o .separator especificando ele

    Código (Forge Crash):
    .mode csv
    para importar usamos o comando .import seguido do arquivo que vamos importar e por fim a tabela onde vamos armazenar ele

    Código (Forge Crash):
    .import kodo.csv eofclub
    [​IMG]

    pronto foi importado com sucesso, agora podemo usar o select para listar aquela tabela ou fazer buscas mais precisas filtrando com where ou qualquer outra coisa que a linguagem SQL nos permita

    Código (Forge Crash):
    select * from eofclub;
    [​IMG]

    ate um proximo tutorial galera, minna-san sayonara \o

    by kodo no kami
     
    • Gostei Gostei x 1
    • Amigável Amigável x 1
    • Bem Escrito Bem Escrito x 1
  2. armelin1
    Offline

    armelin1 Aquele que deletou seu tópico Equipe GameMods Moderador do Fórum Veterano VIP Sabotador.com VIP Sabotador.com VIP Industrial

    Afiliado:
    5 Maio 2014
    Mensagens:
    1,860
    Sexo:
    Masculino
    Avaliações:
    +639 / -0
    Apelido no Minecraft:
    armelin1
    upload_2018-7-20_12-23-16.png
    Pra quem tem preguiça de usar linha de comando fica a dica.
     
    • Engraçado Engraçado x 3
    • Gostei Gostei x 1

Compartilhe esta Página