On 2/21/07, David Davis <[EMAIL PROTECTED]> wrote:
I'm the author of EasyDBI
<snip> Comments? Suggestions?
David On 2/21/07, Matt Sickler <[EMAIL PROTECTED]> wrote: > > yes, DBI and PoCoEasyDBI work just fine on windows > > On 2/21/07, Bill Nash <[EMAIL PROTECTED]> wrote: > > > > > > Well... > > > > A better question would be: Do Perl and DBI work with windows? > > > > - billn > > > > On Wed, 21 Feb 2007, Mathieu Longtin wrote: > > > > > Do any of them work with windows? > > > > > > On 2/21/07, Matt Sickler <[EMAIL PROTECTED]> wrote: > > > > > > > > POE::Component::EasyDBI is what I use - quite simple and can be > > powerful > > > > > > > > On 2/20/07, Kevin Scaldeferri <[EMAIL PROTECTED]> wrote: > > > > > > > > > > Anyone want to strongly advocate for one of the four or so > > components > > > > > that comes up on a CPAN search for "POE DBI"?
Ah, the perfect thread for me to jump in with an issue I had with EasyDBI on Win32, original message below to which I received no responses. Any advice would be much appreciated. ---------- Forwarded message ---------- From: Jake Peavy <[EMAIL PROTECTED]> Date: Dec 6, 2006 7:09 PM Subject: EasyDBI -- No result, just 'Died' To: POE Mailing List <poe@perl.org> Hey yall, I'm having some problems with EasyDBI. I'm trying to do two simultaneous selects from two different databases. Both queries work fine via standard DBI, but when I run through EasyDBI and POE, the queries take the right amount of time (the query time is roughly 2 minutes), but they don't return results - all I get is the Error value of the hash in ARG0 reporting the query "Died". The queries make use of DBD::ODBC if that matters. My guess is maybe that EasyDBI sees something in the return value that it interprets as the query dying (maybe it's trying to compare the number of rows it got to the number the DB reported it was sending? just a WAG..), however, like I said, the queries are ok using a normal DBI connection. Here's the code I'm using though it won't be much help without the back end DB. If anyone has any ideas on how to debug, I'm all ears. In the meantime, I also tried SimpleDBI, stay tuned for those results... :)~ TIA, -jp #!/usr/bin/perl use strict; use warnings; use POE; use POE::Component::EasyDBI; use Data::Dumper; $Data::Dumper::Maxdepth = 1; POE::Component::EasyDBI->spawn( alias => 'db1', dsn => 'dbi:ODBC:Sybase.db1', username => 'user', password => 'pass', stopwatch => 1, ); POE::Component::EasyDBI->spawn( alias => 'db2', dsn => 'dbi:ODBC:Sybase.db2', username => 'user', password => 'pass', stopwatch => 1, ); POE::Session->create( inline_states => { _start => sub { print '[' . localtime() . "] initiating db1 query\n"; $_[KERNEL]->post( 'db1', arrayhash => { sql => 'select * from table where foo = ?', event => 'db1_result_handler', placeholders => [ 'bar' ], } ); print '[' . localtime() . "] initiating db2 query\n"; $_[KERNEL]->post( 'db2', arrayhash => { sql => 'select * from table where foo = ?', event => 'db2_result_handler', placeholders => [ 'bar' ], } ); }, db1_result_handler => sub { #my %success_hash = %{ $_[ARG0] }; print '[' . localtime() . "] db1 query complete\n"; print Dumper $_[ARG0]; $_[KERNEL]->post( db1 => 'shutdown' ); }, db2_result_handler => sub { #my %success_hash = %{ $_[ARG0] }; print '[' . localtime() . "] db2 query complete\n"; print Dumper $_[ARG0]; $_[KERNEL]->post( db2 => 'shutdown' ); }, }, ); $poe_kernel->run(); __END__ -- -jp Chuck Norris sleeps with a night light. Not because Chuck Norris is afraid of the dark, but the dark is afraid of Chuck Norris