From 13c27fe9318ac0885b424ec8388cb1ee96fdc976 Mon Sep 17 00:00:00 2001 From: Aleisha Amohia Date: Fri, 7 May 2021 14:07:43 +1200 Subject: [PATCH] Bug 14237: (follow-up) Set course_items.biblionumber for existing rows This atomic update will run after the first atomic update which adds the biblionumber column to course_items. --- ...d_course_items.biblionumber_column_update_existing.perl | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 installer/data/mysql/atomicupdate/bug_14237-add_course_items.biblionumber_column_update_existing.perl diff --git a/installer/data/mysql/atomicupdate/bug_14237-add_course_items.biblionumber_column_update_existing.perl b/installer/data/mysql/atomicupdate/bug_14237-add_course_items.biblionumber_column_update_existing.perl new file mode 100644 index 0000000000..177994d44f --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_14237-add_course_items.biblionumber_column_update_existing.perl @@ -0,0 +1,14 @@ +$DBversion = 'XXX'; +if ( CheckVersion( $DBversion ) ) { + my $itemnumbers = $dbh->selectall_arrayref("SELECT DISTINCT(itemnumber) FROM course_items", { Slice => {} }); + my $query = "UPDATE course_items SET biblionumber = ? WHERE itemnumber = ?"; + foreach my $row ( @$itemnumbers ) { + my @biblionumber = $dbh->selectrow_array("SELECT biblionumber FROM items WHERE itemnumber = $row->{itemnumber}"); + if ( $biblionumber[0] ) { + my @bind_values = ( $biblionumber[0], $row->{itemnumber} ); + $dbh->do($query, undef, @bind_values); + } + } + + NewVersion( $DBversion, 14237, "Update biblionumber for existing course_items" ); +} -- 2.11.0