
Como instalar o Docker no Linux(Ubuntu)
Para instalar o docker no ubuntu basta seguir os passos abaixo: Abra o terminal do Linux copie e cole os... 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.
Para instalar o docker no ubuntu basta seguir os passos abaixo: Abra o terminal do Linux copie e cole os... Leia mais
A função list() do PHP é uma forma prática de atribuir múltiplos valores de um array a variáveis individuais. Neste... Leia mais
Tabela para consulta rápida a convenção de nomes utilizadas em projetos Laravel: Leia mais
No ecossistema Laravel, há duas formas principais de interagir com o banco de dados: o Eloquent ORM e o Query... Leia mais