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 Thanks, 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: "Alexander Foken" <[EMAIL PROTECTED]> To: "Andrew Edson" <[EMAIL PROTECTED]> Cc: <[email protected]> Sent: Wednesday, February 28, 2007 11:55 AM Subject: Re: Perl-Postgres connection: 'Commit' method not found in DBI. Advice?
> Please post some code, it seems like there is something wrong in > purge_acnt. Line 242 and a few lines before and after should be > interesting, and the lines around DBI->connect. > > Alexander > > On 28.02.2007 16:50, Andrew Edson wrote: >> I am working with a perl file intended to enter a postgresql database (as >> user postgres), select a list of key values based on one of those values and >> delete any records which match the returned results. The purpose of the >> program is to delete inactive records from the database that are over two >> years in age. >> >> (For the record, the system in question is running SuSE 9.3 os, Apache2, >> Postgres 8.1.3, and appears to be running Perl 5.8.6) >> >> When I first ran the perl script, it did not appear to be working; >> entering the database afterwards would show that the data was still present. >> After finding and uncommenting a 'commit' statement at the end, I am now >> ending up with the error message >> >> Can't locate object method "commit" via package "DBI::st" at ./purge_acnt >> line >> 242 (#1) >> (F) You called a method correctly, and it correctly indicated a package >> functioning as a class, but that package doesn't define that particular >> method, nor does any of its base classes. See perlobj. >> Uncaught exception from user code: >> Can't locate object method "commit" via package "DBI::st" at >> ./purge_acnt line 242. >> at ./purge_acnt line 242 >> Database handle destroyed without explicit disconnect at ./purge_acnt line >> 242. >> Database handle destroyed without explicit disconnect at ./purge_acnt line >> 242. >> >> I am asuming that the last two lines are because the program crashed, >> artificially severing the connections to the DB. (The last couple of lines >> of the program are normal disconnect statements, but occur after the >> 'commit' line that triggered the error.) It's the rest of the error that I >> am confused about. If I am reading it correctly, it seems to be saying that >> there is no 'commit' function in the DBI. Do I need to update my DBI files >> somehow, or is there another way to prevent this error from occuring? And >> if I have to update, would someone please be kind enough to link me to a >> good set of instructions on doing so? >> >> Thank you for your consideration. >> >> >> --------------------------------- >> Sucker-punch spam with award-winning protection. >> Try the free Yahoo! Mail Beta. >> > > > -- > Alexander Foken > mailto:[EMAIL PROTECTED] http://www.foken.de/alexander/ > >
