RSS

Arquivo da categoria: Perl

Migrando do excel para algum DB

Vou ser bem retórico, missão aqui é abrir vários arquivos
.xls“(extensão de arquivos do excel) que contenham a mesma
tabela,passar para XML e depois dar parser para dar “INSERT
em algum DB.

Justificativa da missão ,ano passado por 3 vezes eu
peguei freelancer de portar tabelas de “excel” para
algum SGBD, muita gente reclamando para mim que
gostaria de saber como o fazer e tudo mais foi outro
motivo, muitos clientes por falta de tempo e de estudo
preferem usar “excel” do que DB,pessoal de contabilidade
principalmente ,só olham para possibilidade de usar
banco de dados quando se tem milhares de tabelas do excel
para se alterar etc
, Isso é o que mantêm os estagiários em
algumas empresas,mas se perde muito tempo e dinheiro com
isso…
Read the rest of this entry »

 
Deixe um comentário

Publicado por em janeiro 6, 2012 em Banco de dados, Linguagem C, Perl

 

Simples agenda usando DBIx::Class em Perl

neste exemplo mostro como usar DBIx::Class + SQLite para um trabalho simples uma agenda eletronica
vamos fazer o feito ,primeiro precisamos criar as tabelas

CREATE TABLE agenda (
nome VARCHAR(50),
telefone INT(10),
cidade VARCHAR(50)
);

add num banco chamado example.db dentro duma pasta chamada DB ótimo temos nosso banco
criamos um diretório com nome “MyDatabase” dentro desde diretório criamos Main.pm com conteudo

package MyDatabase::Main;
use base qw/DBIx::Class::Schema/;
__PACKAGE__->load_classes(qw/agenda/);

1;

feito isso criamos outra pasta com nome Main e dentro desta pasta criamos o arquivo agenda.pm
contendo dados das tabelas

package MyDatabase::Main::agenda;
use base qw/DBIx::Class/;
__PACKAGE__->load_components(qw/PK::Auto Core/);
__PACKAGE__->table(‘agenda’);
__PACKAGE__->add_columns(qw/ nome telefone cidade /);

1;

ótimo volte para pasta inicial onde tem o DB e o MyDatabase crie uma rquivo chamado agenda.pl com conteudo

#!/usr/bin/perl -w
#http://search.cpan.org/~ash/DBIx-Class-0.08010/lib/DBIx/Class/Manual/Intro.pod#It%27s_all_about_the_ResultSet
use MyDatabase::Main;

my $schema = MyDatabase::Main->connect(‘dbi:SQLite:db/example.db’);
Inicio:
mostra();
my @all = $schema->resultset(‘agenda’)->all;
my $all = $schema->resultset(‘agenda’);
print “total de cadastros $alln”;

print “digite o numero da opçãon”;
chomp($escolha=);
if (!!$escolha) {

####### busca simples
if($escolha eq “4”) {
print “digite o que buscarn”; chomp($busca1=);
my $rs = $schema->resultset(‘agenda’)->search(
{ nome => “$busca1” }
);
while (my $track = $rs->next) {
my $nome=$track->nome; my $tel=$track->telefone; my $local=$track->cidade;
print “$nome $tel $localn”;
}
goto Inicio;
}
####### listando lista de nomes
if($escolha eq “3”) {
my $rd = $schema->resultset(‘agenda’);
while (my $track = $rd->next) {
my $nome=$track->nome; my $tel=$track->telefone; my $local=$track->cidade;
print “$nome $tel $localn”;
}
sleep 2;
goto Inicio;
}
####### add cadastro
if($escolha eq “1”) {
print “digite um nomen”; chomp($nome=);
print “digite o telefonen”; chomp($telefone=);
print “digite a cidaden”; chomp($cidade=);
if((!!$nome) && (!!$telefone) && (!!$cidade)) {
my $novo = $schema->resultset(‘agenda’)->new(
{ nome => “$nome”, telefone => “$telefone”, cidade => “$cidade”});
$novo->insert;
}
goto Inicio;
}
###### remover cadastro
if($escolha eq “2”) {
print “digite um nome para remover da agenda n”; chomp($nome=);
$schema->resultset(‘agenda’)->search({ nome => “$nome” })->delete;
goto Inicio;
}

if($escolha eq “5”) { exit; }

}
sub mostra {
print ”
By Cooler
|——————————————–|
| Agenda com SQLite e DBIx::CLass |
|——————————————–|
| 1- adicionar cadastro |
| 2- remover cadastro |
| 3- listar cadastros |
| 4- procurar cadastro |
| 5- sair |
|——————————————–|
“;
}

para rodar “perl agenda.pl” pronto você tem uma agenda com DBIx::Class mais informações vide no CPAN
isso só foi uma receita simples de como pode ser usado este módulo

link sobre mais informações do módulo
http://search.cpan.org/~ash/DBIx-Class-0.08010/lib/DBIx/Class.pm

 
Deixe um comentário

Publicado por em maio 11, 2010 em Perl

 

Apostila de Perl

bom galera eu escrevi esta apostila a um ano atrás terminei ela nem tive tempo de passar corretor ortográfico deixa para próxima…
camel
é mais para iniciantes da linguagem ensina sockets,spiders,banco dados DBM e SQL e outras coisas como regex…

Download

 
2 Comentários

Publicado por em maio 9, 2010 em Perl