[Cascavel-pm] Res: Res: Res: Res: Duvida $dbh->prepare

Patty Silva ptfzs em yahoo.com.br
Segunda Janeiro 29 08:35:15 PST 2007


Pronto..troquei por  if ( $@ ) {
   print "Error in the database: $@";
   exit;
 }

e Funcionou

:D

----- Mensagem original ----
De: Gabriel Vieira <gabriel.vieira em gmail.com>
Para: Cascavel Perl Mongers <cascavel-pm em pm.org>
Enviadas: Segunda-feira, 29 de Janeiro de 2007 16:30:21
Assunto: Re: [Cascavel-pm] Res: Res: Res: Duvida $dbh->prepare

Amiga Paty, como dito anteriormente o $@ é a mensagem de erro do último eval executado, isso se o eval retornar um erro.

Ou seja, o eval que você executou retornou erro e você solicitou a impressão desse erro na tela. Que foi o acontecido.


Correto?

Vale dar uma olhada para ver que erro é esse e como corrigí-lo.

On 1/29/07, Fernando Oliveira <
fernandocorrea em gmail.com> wrote:Provavelmente por $@ estar definido...


Em 29/01/07, Patty Silva<ptfzs em yahoo.com.br> escreveu:
>
> Ola Pessoal.. Retomando o Script... :)
>
> Tentei inserir a sugestao que o Igor me passou porem quando coloco a linha

> :
> };die $@ if defined $@;
>
> da esse erro:  Died at ->
> Porem se eu tiro funciona!! :D
>
>
> O que pode ser?
>
>
>
>
> ----- Mensagem original ----

> De: Nelson Ferraz <nferraz em gmail.com>
> Para: Cascavel Perl Mongers <cascavel-pm em pm.org>
> Enviadas: Sexta-feira, 26 de Janeiro de 2007 15:45:33

> Assunto: Re: [Cascavel-pm] Res: Res: Duvida $dbh->prepare
>
>
> Patty Silva wrote:
> > sub insert
> > {
> >
> > my ($nome,$var,$flag, em datas)=@_;
> >

> >
> > my $sql = qq/ INSERT INTO tablea(Nome,Data) VALUES(?,?) ON DUPLICATE KEY
> UPDATE $var="$flag" /;
> >
> >
> > eval
> > {
> >         $sth2 = $dbh->prepare($sql);

> >
> >         foreach my $data(@datas)
> >         {
> >             $sth2->execute($nome,$data);
> >
> >
> >         }
> >     $sth2->commit;

> >
> > };
> >
> > }
>
> Patty,
>
> Você colocou o código dentro de um eval, o que é bom, mas não verificou
> se ele retornou um erro, o que é mau.
>

> Seria melhor fazer o seguinte:
>
> eval {
>   # código
> };
>
> # tratamento de erros
> die $@ if defined $@;
>
>
> Esconder mensagens de erro é o mesmo que varrer a sujeira pra debaixo do

> tapete: você deixa de enxergar o problema, mas ele continua lá.
>
> []s
>
> Nelson
>
> _______________________________________________
> Cascavel-pm mailing list
> 
Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>
>
> __________________________________________________

> Fale com seus amigos de graça com o novo Yahoo! Messenger
> http://br.messenger.yahoo.com/
> _______________________________________________
> Cascavel-pm mailing list

> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>
>


--
[]'s Fernando

_______________________________________________
Cascavel-pm mailing list
Cascavel-pm em pm.org
http://mail.pm.org/mailman/listinfo/cascavel-pm





-- 
Gabriel Vieira
_______________________________________________
Cascavel-pm mailing list
Cascavel-pm em pm.org
http://mail.pm.org/mailman/listinfo/cascavel-pm





__________________________________________________
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070129/e3162d80/attachment-0001.html 


Mais detalhes sobre a lista de discussão Cascavel-pm