Resumo: neste tutorial mostraremos passo a passo como atualizar dados na tabela MySQL usando Perl DBI.
Etapas de atualização de dados do Perl MySQL
Para atualizar dados em uma tabela, você usa a instrução UPDATE . Você usa as seguintes etapas para atualizar dados em uma tabela MySQL usando DBI:
Primeiro, conecte-se ao banco de dados MySQL usando o connect()
método.
my $dbh = DBI->connect($dsn,$username,$password, \%attr);
Linguagem de código: Perl ( perl )
Em seguida, construa uma UPDATE
instrução e passe-a para o prepare()
método do objeto identificador do banco de dados para preparar uma instrução para execução.
my $sql = "UPDATE table_name SET col_name = ? WHERE id=?";
my $sth = $dbh->prepare($sql);
Linguagem de código: Perl ( perl )
Então, se você quiser passar valores do programa Perl para a UPDATE
instrução, coloque os espaços reservados (?) na instrução e vincule o parâmetro correspondente usando o bind_param()
método do objeto identificador da instrução.
$sth->bind_param(1,$value);
$sth->bind_param(2,$id);
Linguagem de código: Perl ( perl )
Depois disso, chame o execute()
método do objeto handle da instrução para executar a consulta.
$sth->execute();
Linguagem de código: Perl ( perl )
Finalmente, desconecte-se do banco de dados MySQL usando o disconnect()
método.
$dbh->disconnect();
Linguagem de código: Perl ( perl )
Exemplo de dados de atualização Perl MySQL
O exemplo a seguir atualiza os dados na tabela de links com o ID do link 2. Antes de atualizar os dados, vamos examinar primeiro a tabela de links:
SELECT * FROM links;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Veja o seguinte programa:
#!/usr/bin/perl
use strict;
use warnings;
use v5.10; # for say() function
use DBI;
# MySQL database configurations
my $dsn = "DBI:mysql:perlmysqldb";
my $username = "root";
my $password = '';
say "Perl MySQL Update Data Demo";
# connect to MySQL database
my %attr = ( PrintError=>0, RaiseError=>1);
my $dbh = DBI->connect($dsn,$username,$password, \%attr);
# update statement
my $sql = "UPDATE links
SET title = ?,
url = ?,
target = ?
WHERE link_id = ?";
my $sth = $dbh->prepare($sql);
my $id = 2;
my $title = "Perl MySQL Update Data Tutorial";
my $url = "https://tutorials.acervolima.com/perl-mysql/perl-mysql-update/";
my $target = "_self";
# bind the corresponding parameter
$sth->bind_param(1,$title);
$sth->bind_param(2,$url);
$sth->bind_param(3,$target);
$sth->bind_param(4,$id);
# execute the query
$sth->execute();
say "The record has been updated successfully!";
$sth->finish();
# disconnect from the MySQL database
$dbh->disconnect();
Linguagem de código: Perl ( perl )
A saída do programa é:
Perl MySQL Update Data Demo
The record has been updated successfully!
Vamos consultar a links
tabela novamente para verificar a atualização.
SELECT * FROM links;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
O registro do link com ID 2 foi alterado com sucesso.
Neste tutorial, você aprendeu como atualizar dados na tabela MySQL usando instruções preparadas em Perl DBI.