Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight

Re: Verify database consistency after merge

by tcf03 (Deacon)
on Oct 17, 2006 at 03:33 UTC ( [id://578649]=note: print w/replies, xml ) Need Help??

in reply to Verify database consistency after merge

you could just get md5s before and after. I do something similar with two databases that are supposed to be the same. Unfortunately one is informix and one is sql server

so I bind the columns to hashes, and feed the hashref and the db connection off to a sub which gives me hashes sums

...snip lots of other code...
use strict; # the obligitory use warnings; # use strict and warnings use Digest::MD5; my $makedigest = \&digestit; my %ldb = $makedigest->(\%lemployee, $lsth); my %rdb = $makedigest->(\%remployee, $rsth);
...snip lots of other code...
sub digestit { my $dbhash = shift; my $sth = shift; my %newdbhash = (); while ( $sth->fetchrow_arrayref ) { my $keydata = Digest::MD5->new; for my $key ( keys %{$dbhash} ) { %{$dbhash}->{$key} = '' unless ( defined(%{$dbhash}->{$key}) ); } $keydata->add(%{$dbhash}->{$_}) for @key; my $digest = $keydata->hexdigest; $newdbhash{$digest} = {%{$dbhash}}; } return %newdbhash; }
My main reason for doing it this way is that I have NO unique key, so I rely on several columns together to provide me with a unique key. Because the above code is incomplete its probably useless, but the concept is there. Once you have your two hashes ( before and after ) compare the sums.
"That which we persist in doing becomes easier, not that the task itself has become easier, but that our ability to perform it has improved."
  --Ralph Waldo Emerson

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://578649]
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having an uproarious good time at the Monastery: (6)
As of 2024-05-21 22:53 GMT
Find Nodes?
    Voting Booth?

    No recent polls found