Bug 21946: Database updates

Signed-off-by: Liz Rea <wizzyrea@gmail.com>

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Signed-off-by: Alex Arnaud <alex.arnaud@biblibre.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This commit is contained in:
Nick Clemens 2019-03-13 00:36:48 +00:00 committed by Jonathan Druart
parent 0570d1fd24
commit 0545feb876
2 changed files with 22 additions and 0 deletions

View File

@ -0,0 +1,20 @@
$DBversion = 'XXX';
if( CheckVersion( $DBversion ) ) {
unless ( column_exists('itemtypes', 'parent_type') ) {
$dbh->do(q{
ALTER TABLE itemtypes
ADD COLUMN parent_type VARCHAR(10) NULL DEFAULT NULL
AFTER itemtype;
});
}
unless ( foreign_key_exists( 'itemtypes', 'itemtypes_ibfk_1') ){
$dbh->do(q{
ALTER TABLE itemtypes
ADD CONSTRAINT itemtypes_ibfk_1
FOREIGN KEY (parent_type) REFERENCES itemtypes (itemtype)
});
}
SetVersion( $DBversion );
print "Upgrade to $DBversion done (Bug 21946 - Add parent type to itemtypes)\n";
}

View File

@ -897,6 +897,7 @@ CREATE TABLE `items` ( -- holdings/item information
DROP TABLE IF EXISTS `itemtypes`;
CREATE TABLE `itemtypes` ( -- defines the item types
itemtype varchar(10) NOT NULL default '', -- unique key, a code associated with the item type
parent_type varchar(10) NULL default NULL, -- unique key, a code associated with the item type
description LONGTEXT, -- a plain text explanation of the item type
rentalcharge decimal(28,6) default NULL, -- the amount charged when this item is checked out/issued
rentalcharge_daily decimal(28,6) default NULL, -- the amount charged for each day between checkout date and due date
@ -914,6 +915,7 @@ CREATE TABLE `itemtypes` ( -- defines the item types
hideinopac tinyint(1) NOT NULL DEFAULT 0, -- Hide the item type from the search options in OPAC
searchcategory varchar(80) default NULL, -- Group this item type with others with the same value on OPAC search options
PRIMARY KEY (`itemtype`),
CONSTRAINT itemtypes_ibfk_1 FOREIGN KEY (parent_type) REFERENCES itemtypes(itemtype) ON UPDATE CASCADE ON DELETE CASCADE,
UNIQUE KEY `itemtype` (`itemtype`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;