@@ -, +, @@ --- installer/data/mysql/atomicupdate/bug_30483.pl | 12 ++++++++++++ installer/data/mysql/kohastructure.sql | 4 ++-- 2 files changed, 14 insertions(+), 2 deletions(-) create mode 100755 installer/data/mysql/atomicupdate/bug_30483.pl --- a/installer/data/mysql/atomicupdate/bug_30483.pl +++ a/installer/data/mysql/atomicupdate/bug_30483.pl @@ -0,0 +1,12 @@ +use Modern::Perl; + +return { + bug_number => 30483, + description => "Make issues.borrowernumber and itemnumber NOT NULL", + up => sub { + my ($args) = @_; + my ($dbh, $out) = @$args{qw(dbh out)}; + my $sql = "ALTER TABLE issues MODIFY COLUMN borrowernumber int(11) NOT NULL COMMENT 'foreign key, linking this to the borrowers table for the patron this item was checked out to', MODIFY COLUMN itemnumber int(11) NOT NULL COMMENT 'foreign key, linking this to the items table for the item that was checked out'"; + $dbh->do($sql); + }, +}; --- a/installer/data/mysql/kohastructure.sql +++ a/installer/data/mysql/kohastructure.sql @@ -3137,9 +3137,9 @@ DROP TABLE IF EXISTS `issues`; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `issues` ( `issue_id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key for issues table', - `borrowernumber` int(11) DEFAULT NULL COMMENT 'foreign key, linking this to the borrowers table for the patron this item was checked out to', + `borrowernumber` int(11) NOT NULL COMMENT 'foreign key, linking this to the borrowers table for the patron this item was checked out to', `issuer_id` int(11) DEFAULT NULL COMMENT 'foreign key, linking this to the borrowers table for the user who checked out this item', - `itemnumber` int(11) DEFAULT NULL COMMENT 'foreign key, linking this to the items table for the item that was checked out', + `itemnumber` int(11) NOT NULL COMMENT 'foreign key, linking this to the items table for the item that was checked out', `date_due` datetime DEFAULT NULL COMMENT 'datetime the item is due (yyyy-mm-dd hh:mm::ss)', `branchcode` varchar(10) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'foreign key, linking to the branches table for the location the item was checked out', `returndate` datetime DEFAULT NULL COMMENT 'date the item was returned, will be NULL until moved to old_issues', --