PHPackages                             joshuawebdev/csv2sql - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. joshuawebdev/csv2sql

ActiveLibrary[Database &amp; ORM](/categories/database)

joshuawebdev/csv2sql
====================

Convert content from csv files to sql instructions that might to be use on create tables

v1.4(3y ago)19PHPPHP &gt;= 5.6

Since Jan 1Pushed 3y agoCompare

[ Source](https://github.com/JoshuaWebDev/csv2sql)[ Packagist](https://packagist.org/packages/joshuawebdev/csv2sql)[ RSS](/packages/joshuawebdev-csv2sql/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (4)Used By (0)

**CSV2SQL**
===========

[](#csv2sql)

> Script em PHP que lê um arquivo no formato csv e converte-o para instruções sql

- Autor: [Joshua](joshuawebdev.wordpress.com)
- Linguagem: [PHP](https://www.php.net)
- Versão 1.4

Descrição:
----------

[](#descrição)

Lê um arquivo no formato csv ao qual consiste em uma tabela importada de um banco de dados ou planilha.

A primeira linha do arquivo .csv contém os atributos da tabela. A segunda linha em diante contém os dados de cada registro da tabela. A primeira linha é dividida e transformada em um array onde seus elementos são os atributos da tabela. As demais linhas do arquivo também são convertidas em arrays onde cada elemento do array é um dado da tabela.

Dependências
------------

[](#dependências)

É necessário ter instalado em seu computador o [PHP](https://www.php.net) a partir da versão 5.6 (versão com suporte a execução pelo terminal) e o gerenciador de dependências [Composer](https://getcomposer.org/).

Instalação
----------

[](#instalação)

```
composer require joshuawebdev/csv2sql

```

Execução
--------

[](#execução)

O programa roda por meio de um terminal (prompt de comando, no caso do Windows). Ele recebe dois parâmetros:

1. local do arquivo csv que será convertido para sql
2. nome da tabela que será gerada após a conversão

Exemplo de Execução:

```
php csv2sql.php [param1] [param2]

```

**\[param1\]** e **\[param2\]** são os parâmetros citados acima.

### Exemplo de Uso:

[](#exemplo-de-uso)

Vamos converter o arquivo data\_example.csv para um arquivo sql com as instruções para gerar uma tabela chamada alunos.

```
php csv2sql.php csv/data_example.csv alunos

```

Recomendações
-------------

[](#recomendações)

- Esta versão do programa ainda exige algumas melhorias em relação a tratamento do arquivo csv antes da conversão, por exemplo eliminação de espaços em branco, linhas desnecessárias ou outras informações geradas automaticamente por uma planilha e que não sejam necessária para a criação das queries. Então uma dica seria eliminar essas inconformidades antes de executar o programa.
- Pode ser que ao gerar as queries haja algum resíduo de texto aos qual não deveria estar lá quando forem executados em um banco de dados, por exemplo vírgulas a mais ou campo numéricos entre aspas duplas. Então é importante removê-los antes de tentar executar estas queries em seu banco de dados.
- O padrão dos arquivos csv é usar vírgulas como separadores, porém, quando se trabalha com unidade monetária brasileira (R$ 10,00, por exemplo) isso pode se tornar um problema, pois também é usada a vírgula para separa as casas decimais. Neste caso há duas soluções: ou a unidade monetária é covertida para o padrão americano (onde é usado o ponto para separar as casas decimais) ou pode-se alterar o separador para outro caractere, como ponto-e-vírgula. Você pode fazer isso alterando a propriedade `$separator` em `src/Csv2Sql.php`.
- Você também pode implementar a biblioteca em seu projeto instanciando um objeto da Classe Csv2Sql. Exemplo:

```
