On 1/11/07 1:39 PM, Jonathan Vanasco wrote: > if i change a table columns definition during testing, I'll get > these errors: > > DBD::Pg::st execute failed: ERROR: prepared statement "dbdpg_17" > does not exist
I believe this is a DBI/DBD::Pg/libpg issue/reality/"feature" :) If you use DBI's prepare_cache() method and you change the db schema between calls, the previously-cached version of the cached statement will become invalid. I think that's what you're seeing. RDBO uses DBI's prepare_cached() method internally by default. This behavior can be controlled per-class using the dbi_prepare_cached() method on the metadata object: http://search.cpan.org/dist/Rose-DB-Object/lib/Rose/DB/Object/Metadata.pm#db i_prepare_cached You can also control it per-call in most object and Manager methods using the prepare_cached parameter. Example: http://search.cpan.org/dist/Rose-DB-Object/lib/Rose/DB/Object.pm#load So you can either not use prepare_cached() at all, or turn it off when the schema changes, and then perhaps back on again afterwards. Overriding dbi_prepare_cached() in a custom metadata class and making it "smart" is one way to do this without worrying about explicit prepare_cached => ... parameters to every call. -John ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Rose-db-object mailing list Rose-db-object@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rose-db-object