X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?a=blobdiff_plain;f=yarrg%2Fdb-idempotent-populate;h=b44d45dd25cc7d63c435059c521bfc0b84a36800;hb=35dc4e063467490048e83f1d9d519cd3652d870e;hp=96df020f842de9ab78e0e59035f7ab5122313db3;hpb=847492a8eebac261fb3ffa5e97391b486a73d336;p=ypp-sc-tools.main.git diff --git a/yarrg/db-idempotent-populate b/yarrg/db-idempotent-populate index 96df020..b44d45d 100755 --- a/yarrg/db-idempotent-populate +++ b/yarrg/db-idempotent-populate @@ -1,5 +1,8 @@ #!/usr/bin/perl -w # +# Normally run from +# update-master-info +# # usage: ./db-idempotent-populate # creates or updates OCEAN-Oceanname.db # from master-master.txt @@ -103,12 +106,28 @@ $dbh->commit; #---------- commodity list ---------- { - my $sth= $dbh->prepare(<<'END') - INSERT OR IGNORE INTO commods (commodname) VALUES (?); + my $insert= $dbh->prepare(<<'END') + INSERT OR IGNORE INTO commods + (unitmass, + unitvolume, + commodname) + VALUES (?,?,?); +END + ; + my $update= $dbh->prepare(<<'END') + UPDATE commods + SET unitmass = ?, + unitvolume = ? + WHERE commodname = ? END ; foreach my $commod (sort keys %commods) { - $sth->execute($commod); + my $c= $commods{$commod}; + die "no mass for $commod" unless defined $c->{Mass}; + die "no colume for $commod" unless defined $c->{Volume}; + my @qa= ($c->{Mass}, $c->{Volume}, $commod); + $insert->execute(@qa); + $update->execute(@qa); } $dbh->commit; }