<br><br><b><i>Nilson Santos Figueiredo Junior <acid06@gmail.com></i></b> a écrit :<blockquote class="replbq" style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><span style="font-style: italic;"> On Dec 26, 2007 3:17 PM, Alesandro Zidane </span><zidanealesx@yahoo.fr><span style="font-style: italic;"> wrote:</span><br style="font-style: italic;"><span style="font-style: italic;">> O que quero e necessito no momento é ter minhas queries organizadas num</span><br style="font-style: italic;"><span style="font-style: italic;">> arquivo xml, que possam ser carregadas e utilizadas repassando apenas um id</span><br style="font-style: italic;"><span style="font-style: italic;">> e possíveis parâmentros.</span><br style="font-style: italic;"><br style="font-style: italic;"><span style="font-style: italic;">Se você quer isso, *e somente isso*, então o DBIx::Class não vai</span><br style="font-style: italic;"><span
style="font-style: italic;">servir pra muita coisa.</span><br style="font-style: italic;"><br style="font-style: italic;"><span style="font-style: italic;">Para fazer o que você deseja, você tem de implementar um iterador</span><br style="font-style: italic;"><span style="font-style: italic;">dentro dentro de seu módulo e, a cada chamada ao método,</span><br style="font-style: italic;"><span style="font-style: italic;">"fetch_ref_array" esse iterador é avançado. Quando acabarem os</span><br style="font-style: italic;"><span style="font-style: italic;">registros, você retorna uma lista vazia ou undef e o loop irá</span><br style="font-style: italic;"><span style="font-style: italic;">finalizar.</span><br><br>Obrigado pela idéia, olha como ficou o método:<br>sub fetch_hashref() {<br> my $self = shift;<br> return sub {<br> unless($self->{_sth})
{<br> $self->_sth(); </zidanealesx@yahoo.fr># Recupera Query do xml<br><zidanealesx@yahoo.fr> $self->{_sth} = $self->{_dbh}->prepare($self->sth_qry) or die("Erro ao criar statement para query $self->{sth_id}: ".$self->{_dbh}->errstr());<br> $self->{_sth}->execute()or die("erro $!");<br> }<br> $self->{_sth}->fetchrow_hashref();<br> };<br>}<br><br>Era por aí que você tinha falado ?<br>Pelo menos já consigo acessar os dados com um simples while:<br><br>my $dbh_qry = Controle::DataBase->new('finish','221442');<br>my $qry_ref = $dbh_qry->fetch_hashref;<br>while(my $ref = &$qry_ref) {<br> print
$ref->{'DADOS_FINISH'}."\n";<br>}<br><br>Gostaria de saber se posso melhorar.<br><br><span style="font-style: italic;">Note que essa prática de referenciar queries por ids pode se tornar</span><br style="font-style: italic;"><span style="font-style: italic;">bastante confusa depoid e talvez valesse mais à pena você fazer uma</span><br style="font-style: italic;"><span style="font-style: italic;">implementação orientada a objetos - utilizando ou não um mapeador</span><br style="font-style: italic;"><span style="font-style: italic;">objeto-relacional.</span><br><br>Não entendi muito bem quando disse uma implementação orientada objetos, estou tentando melhorar e organizar o acesso ao banco de dados do sistema, e qualquer sugestão é bem vinda. Pode me esclarecer melhor ?<br><br>Obrigado..<br><br></zidanealesx@yahoo.fr></blockquote><br><p> 
<hr size="1">
Ne gardez plus qu'une seule adresse mail ! <a href="http://fr.rd.yahoo.com/mail/mail_taglines/trueswitch/*http://www.trueswitch.com/yahoo-fr/">Copiez vos mails</a> vers Yahoo! Mail