Perl + DBI + MySQL

Essa semana precisei criar alguns scripts de migração e estatística de dados em bases MySQL. Esse tipo de problema é bem a area do Perl e Python. Ambos tem uma boa performance em tratamento de dados principalmente arquivos.

Vou tentar explicar como instalar os recursos necessários para fazer uma aplicação em Perl que possa manipular bases de dados em MySQL.

DBI

O DBI é uma interface de acesso e manipulação de dados. Funciona como uma camada entre o script perl e o driver especifico de um SGBD. Com o DBI não é necessário saber a API  de cada SGBD ( Oracle, MySQL, PostgreSQL, etc ). Quando um métido da interface é invocado, a ação é transferida para o driver especifico de forma transparente para o usuário final.

Vamo fazer o troço funcionar.

INGREDIENTES

  • Internet
  • Perl ou ActivePerl ( Caso seja usuário Windows )
  • Teclado

INSTALANDO

Vá até o shell ou prompt de comando e digite:

ppm install DBI

ppm install DBD-mysql

Pronto, agora é só incluir o modulo DBI e já está pronto para usar.

use strict;
use warnings;
use DBI;

my $conexao = DBI->connect('DBI:mysql:database=meu_banco;host=servidor;port=3306','usuario','senha');

É isso ai … a documentação está aqui: http://search.cpan.org/~timb/DBI/DBI.pm
divirtam-se!

Dica Rápida – Booleanos em Perl

Perl é uma linguagem de tipagem fraca/dinhâmica sendo assim as variáveis não são de um tipo especifico e sim assumem um determidado tipo. Isso quer dizer que a variável vai assumir o tipo a depender do conteúdo que lhe foi artibuido e isso pode mudar a qualquer momento do código.

# Agora é uma string
my $var = 'A milhares de anos';
# Inteiro
$var = 100;
# Float
$var = 13.1415

Não existe explicitamente o tipo booleano. Variáveis não definidas, vazio (” ou “”), 0 (zero) e “0” são interpretados como false. Qualquer outro conteúdo responde como true.

Para deixa o código legível é comum declarar duas variáveis $TRUE e $FALSE.

my $TRUE = 1;
my $FALSE = not $TRUE;

É isso ai, valeu Brasil