Koha/installer/data/mysql/atomicupdate/bug_29605.pl
Jonathan Druart 8022543d93 Bug 29605: Missing FK on tmp_holdsqueue.borrowernumber (tmp_holdsqueue_ibfk_3)
Bad copy paste on the foreign_key_exists condition

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2022-02-01 21:39:39 -10:00

39 lines
1.3 KiB
Perl
Executable file

use Modern::Perl;
return {
bug_number => "29605",
description => "Resync DB structure for existing installations",
up => sub {
my ($args) = @_;
my ($dbh, $out) = @$args{qw(dbh out)};
if ( !primary_key_exists( 'language_script_mapping', 'language_subtag' )
and index_exists( 'language_script_mapping', 'language_subtag' ) ) {
$dbh->do(q{
ALTER TABLE language_script_mapping
DROP KEY `language_subtag`;
});
}
if ( !primary_key_exists( 'language_script_mapping', 'language_subtag' ) ) {
$dbh->do(q{
ALTER TABLE language_script_mapping
ADD PRIMARY KEY `language_subtag` (`language_subtag`);
});
say $out "Added missing primary key on language_script_mapping"
}
unless ( foreign_key_exists('tmp_holdsqueue', 'tmp_holdsqueue_ibfk_3') ) {
$dbh->do(q{
ALTER TABLE tmp_holdsqueue
ADD CONSTRAINT `tmp_holdsqueue_ibfk_3` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE
});
say $out "Added missing foreign key on tmp_holdsqueue"
}
},
}