GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
POE::Component::LaDBI::Request(3) User Contributed Perl Documentation POE::Component::LaDBI::Request(3)

POE::Component::LaDBI::Request - Class to encapsulate LaDBI requests to be executed by POE::Component::LaDBI::Engine.

Excuse the vulgarities, I was tired and maybe even a little drunk ;).

  use POE::Component::LaDBI::Request;

  $dsn = 'dbi:Sybase:server=biteme;hostname=sybdb.biteme.com;database=biteme',
  $user = 'pimple';
  $passwd = 'oNMyaSS';

  $req = POE::Component::LaDBI::Request->new(Cmd  => 'connect',
                                             Data => [$dsn, $user, $passwd]);

  $eng = POE::Component::LaDBI::Engine->new();

  $resp = $eng->request( $req );

  die "connect failed" unless $resp->code eq 'OK';

  $dbh_id = $resp->handle_id;

  $sql = 'SELECT * FROM candidates WHERE jaws = ? AND willingness = ?'

  $req = POE::Component::LaDBI::Request->new(Cmd      => 'prepare',
                                             HandleId => $dbh_id  ,
                                             Data     => [$sql]   );

  $resp = $eng->request( $req );

  die "prepare failed" unless $resp->code eq 'OK';

  $sth_id = $resp->handle_id;

  $req = POE::Component::LaDBI::Request->new(Cmd      => 'execute',
                                             HandleId => $sth_id  ,
                                             Data     => ['WEAK','HIGH']);

  $resp = $eng->request( $req );

  die "execute failed" unless $resp->code eq 'OK';

  $req = POE::Component::LaDBI::Request->new(Cmd      => 'rows',
                                             HandleId => $sth_id);

  $resp = $eng->request( $req );

  die "rows failed" unless $resp->code eq 'OK';

  $nr_rows = $resp->data();

  $req = POE::Component::LaDBI::Request->new(Cmd      => 'fetchrow',
                                             HandleId => $sth_id);

  for ($i=0; $i < $nr_rows; $i++) {

     $resp = $eng->request( $resp );

     die "fetchrow failed" unless $resp->code eq 'OK';

     $row = $resp->data();

     print "row[$i]: ", join("\t", @$row), "\n";

  }

"$req = POE::Component::LaDBI::Request->new()"
Upon instantiation a request id is allocated to represent this request. This cookie is available as "$req-"id>.

Args:

For the keys, capitalization does not matter. Internally the keys are lowercased.

"Cmd"
Required.

The command to execute. Only a subset of DBI basic commands implemented.

The value must be in all uppercase.

So far they are:

   CONNECT          ->   DBI->connect
   DISCONNECT       ->   $dbh->disconnect
   PREPARE          ->   $sth->prepare
   FINISH           ->   $sth->finish
   EXECUTE          ->   $sth->execute
   ROWS             ->   $sth->rows
   FETCHROW         ->   $sth->fetchrow
   FETCHROW_HASH    ->   $sth->fetchrow_hash
   FETCHALL         ->   $sth->fetchall
   FETCHALL_HASH    ->   $sth->fetchall_hash
   PING             ->   $dbh->ping
   DO               ->   $dbh->do
   BEGIN_WORK       ->   $dbh->begin_work
   COMMIT           ->   $dbh->commit
   ROLLBACK         ->   $dbh->rollback
   SELECTALL        ->   $dbh->selectall
   SELECTALL_HASH   ->   $dbh->selectall_hash
   SELECTCOL        ->   $dbh->selectcol
   SELECTROW        ->   $dbh->selectrow
   QUOTE            ->   $dbh->quote
    
"HandleId"
For some commands it is required. They are:

   DISCONNECT
   PREPARE
   FINISH
   EXECUTE
   ROWS
   FETCHROW
   FETCHROW_HASH
   FETCHALL
   PING
   DO
   BEGIN_WORK
   COMMIT
   ROLLBACK
   SELECTALL
   SELECTALL_HASH
   SELECTCOL
   SELECTROW
   QUOTE
    
"Data"
For some commands it is required. They are:

   CONNECT
   PREPARE
   DO
   FETCHALL_HASH
   SELECTALL
   SELECTALL_HASH
   SELECTCOL
   SELECTROW
   QUOTE
    

No Data field is allowed for:

   DISCONNECT
   ROWS
   FETCHROW
   FETCHROW_HASH
   BEGIN_WORK
   COMMIT
   ROLLBACK
    
"$req->cmd"
Set/Get accessor function.
"$req->data"
Set/Get accessor function.
"$req->handle_id"
Set/Get accessor function.
"$req->id"
Get accessor function.

None by default.

Sean Egan, <seanegan:bigfoot_com>

perl, POE::Component::LaDBI::Response, POE::Component::LaDBI::Engine.
2004-03-21 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.