@@ -, +, @@ existing rows --- ...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 --- a/installer/data/mysql/atomicupdate/bug_14237-add_course_items.biblionumber_column_update_existing.perl +++ a/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" ); +} --