On Tue, Dec 18, 2012 at 01:59:51PM -0800, Bill Moseley wrote: > On Tue, Dec 18, 2012 at 12:20 AM, Peter Rabbitson > <rabbit+d...@rabbit.us>wrote: > > > On Sat, Dec 15, 2012 at 10:05:07AM -0800, Bill Moseley wrote: > > > I've been asked to add something to our build process that does some kind > > > of sanity check on the database. For example, make sure all columns > > > defined in the result class exist in the target database. > > > > > > I realize this won't catch every potential problem, but should catch > > > missing columns (or tables) which is our biggest risk. > > > > > > This seems like a reasonable way to do this? > > > > I personally would opt for an in-memory DBIC::Schema::Loader dump, and > > then running comparisons between the corresponding resultsource instances. > > A little bit more work- but much more robust. > > > > Our sources were created by hand, so I doubt the dump would match. But, > maybe that's a good reason to update our sources. We have been pretty > lazy and not defining that many attributes on our columns. >
FWIW I've been planning on making a helper that would do this for a while now. My plan was to use Schema::Loader to generate the representation of database and then make two SQL::Translator::Producers that would generate an introspectable data structure and a human readable description of the differences, respectively. I've manually done something similar by using DBI to read the INFORMATION_SCHEMA and looking at the sources, but the above is more generic and may shake out bugs in SL and (of course) SQLT. -- fREW Schmidt http://blog.afoolishmanifesto.com
pgp5GIEXfr595.pgp
Description: PGP signature
_______________________________________________ List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class IRC: irc.perl.org#dbix-class SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/ Searchable Archive: http://www.grokbase.com/group/dbix-class@lists.scsys.co.uk