Git fetch: Como Verificar alterações sem aplicá-las
O Git é uma ferramenta poderosa para controle de versão, amplamente utilizada por desenvolvedores. Ao trabalhar com repositórios Git, é... Leia mais
Desenvolvedor de Software
O método PDO::pgsqlCopyFromArray
permite copiar dados de um array diretamente para uma tabela no PostgreSQL. Este tutorial mostra como usar esse método no contexto do Laravel.
Os métodos do PDO no Laravel podem ser acessados diretamente através da conexão com o banco de dados fornececida pelo Eloquent.
use Illuminate\Support\Facades\DB;
try {
$pdo = DB::connection()->getPdo();
$tableName = 'nome_da_tabela';
$delimiter = "\t";
$nullAs = "\\N";
$pdo->pgsqlCopyFromArray($tableName, $dados, $delimiter, $nullAs);
echo "Dados inseridos com sucesso!";
} catch (PDOException $e) {
echo 'Falha ao inserir dados: ' . $e->getMessage();
}
Este exemplo mostra como ler um arquivo CSV, converter seus dados em um formato adequado e importá-los para uma tabela PostgreSQL usando o método PDO::pgsqlCopyFromArray
no Laravel.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use PDOException;
class ImportController extends Controller
{
public function importCsv(Request $request)
{
// Validação do arquivo
$request->validate([
'csv_file' => 'required|file|mimes:csv,txt',
]);
// Caminho do arquivo CSV
$path = $request->file('csv_file')->getRealPath();
// Ler o conteúdo do arquivo CSV
$file = fopen($path, 'r');
$dados = [];
while (($linha = fgetcsv($file, 1000, ",")) !== FALSE) {
$dados[] = implode("\t", $linha);
}
fclose($file);
// Inserir dados na tabela usando pgsqlCopyFromArray
try {
$pdo = DB::connection()->getPdo();
$tableName = 'nome_da_tabela';
$delimiter = "\t";
$nullAs = "\\N";
$pdo->pgsqlCopyFromArray($tableName, $dados, $delimiter, $nullAs);
echo "Dados inseridos com sucesso!";
} catch (PDOException $e) {
echo 'Falha ao inserir dados: ' . $e->getMessage();
}
}
}
Utilizar PDO::pgsqlCopyFromArray
é uma maneira eficiente de inserir grandes volumes de dados no PostgreSQL. Certifique-se de validar o arquivo e manipular exceções adequadamente para garantir uma importação segura e eficaz.
Para mais detalhes, consulte a documentação oficial do PHP.
O Git é uma ferramenta poderosa para controle de versão, amplamente utilizada por desenvolvedores. Ao trabalhar com repositórios Git, é... Leia mais
Se você já se deparou com a frustrante mensagem de erro “ssh: connect to host bitbucket.org port 22: Network is... Leia mais
Como todo mundo na programação já passou por este clichê, aqui não poderia ser diferente então o primeiro post desse... Leia mais
Quando se trata de gerenciar bancos de dados, o PostgreSQL se destaca como uma escolha robusta e flexível para desenvolvedores... Leia mais