Yes I would prefer to steer clear of Postgres functions as they seem to be able 
to only handle fetches from a single table
But as of right now this is the only option for disabling Autocommit *feature*

Thanks/Merci Beaucoups-
Martin--
--------------------------------------------------------------------------- 
This e-mail message (including attachments, if any) is intended for the use of 
the individual or entity to which it is addressed and may contain information 
that is privileged, proprietary , confidential and exempt from disclosure. If 
you are not the intended recipient, you are notified that any dissemination, 
distribution or copying of this communication is strictly prohibited.
--------------------------------------------------------------------------- 
Le présent message électronique (y compris les pièces qui y sont annexées, le 
cas échéant) s'adresse au destinataire indiqué et peut contenir des 
renseignements de caractère privé ou confidentiel. Si vous n'êtes pas le 
destinataire de ce document, nous vous signalons qu'il est strictement interdit 
de le diffuser, de le distribuer ou de le reproduire.
  ----- Original Message ----- 
  From: Jonathan Leffler 
  To: Martin Gainty 
  Cc: DBI Users Mailing List 
  Sent: Thursday, March 01, 2007 12:13 AM
  Subject: Re: Perl-Postgres connection: 'Commit' method not found in DBI. 
Advice?





  On 2/28/07, Martin Gainty <[EMAIL PROTECTED]> wrote:
    yep--
    Aparently postgres thinks its smarter than anyone that wants to use it and 
has Auto-commit ALWAYS turned on
    If you find a way to turn this *feature* off let me know because it is 
massively counter intuitive to normal operation of any other db on the planet 



  I'm not sure about PostgreSQL, but Informix has a somewhat similar mode - or 
two somewhat similar modes.  An unlogged (Informix) database has no transaction 
support at all; you cannot do transactions, and each statement is nominally a 
self-contained transaction (except that if an error occurs part way through, 
the changes made so far are not undone - for DML statements).  In a regular 
logged database, each statement is a separate transaction - complete with 
rollback so that if a statement fails part way through, the database is left as 
if the statement had never been executed.  In a logged database, you can 
suppress the auto-commit mode by an explicit BEGIN WORK statement.  This begins 
a (multi-statement) transaction that is terminated by COMMIT WORK or ROLLBACK 
WORK.  If something happens to the client before COMMIT is executed, the 
transaction is rolled back. 

  It doesn't take a lot of searching around the PostgreSQL documentation to 
find:

  BEGIN -- start a transaction block
  Synopsis
BEGIN [ WORK | TRANSACTION ] [ transaction_mode [, ...] ]where transaction_mode 
is one of:    ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED 
| READ UNCOMMITTED }
    READ WRITE | READ ONLY
  I suspect you'll find that this 'turns off autocommit' for you.

  -- 
  Jonathan Leffler < [EMAIL PROTECTED]>  #include <disclaimer.h>
  Guardian of DBD::Informix - v2007.0226 - http://dbi.perl.org
  "I don't suffer from insanity - I enjoy every minute of it." 

Reply via email to