Bug 34029: Extend datatypes of biblioitems.columns to text to avoid breaking import
This updated the datatype of the following columns from varchar(255) to text to avoid import problems if the mapped MARC field's data exceeds 255 characters. This is for: * place (260$a and 264$a) * publishercode (260$b and 264$b) * size (300$c) * illus (300$b) * pages (300$a) To test: * Edit a bibliographic record and enter more than 255 characters into the MARC fields listed above. Try to save. * Run the updatedatabase script to modify the DB structure * restart_all * Edit a bibliographic record and enter more than 255 characters into the MARC fields listed above. * Save * Export the record * Import the record using staging tools, all should work well Signed-off-by: Sam Lau <samalau@gmail.com> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
parent
30be338c24
commit
00545f8780
2 changed files with 75 additions and 10 deletions
65
installer/data/mysql/atomicupdate/bug_34029_biblioitems.pl
Executable file
65
installer/data/mysql/atomicupdate/bug_34029_biblioitems.pl
Executable file
|
@ -0,0 +1,65 @@
|
||||||
|
use Modern::Perl;
|
||||||
|
|
||||||
|
return {
|
||||||
|
bug_number => "34029",
|
||||||
|
description => "Extend datatypes in biblioitems and deletedbiblioitems tables to avoid import errors",
|
||||||
|
up => sub {
|
||||||
|
my ($args) = @_;
|
||||||
|
my ($dbh, $out) = @$args{qw(dbh out)};
|
||||||
|
$dbh->do(q{
|
||||||
|
ALTER TABLE `biblioitems`
|
||||||
|
MODIFY COLUMN `place` text DEFAULT NULL COMMENT 'publication place (MARC21 260$a and 264$a)'
|
||||||
|
});
|
||||||
|
say $out "Updated biblioitems.place to text";
|
||||||
|
$dbh->do(q{
|
||||||
|
ALTER TABLE `deletedbiblioitems`
|
||||||
|
MODIFY COLUMN `place` text DEFAULT NULL COMMENT 'publication place (MARC21 260$a and 264$a)'
|
||||||
|
});
|
||||||
|
say $out "Updated deletedbiblioitems.place to text";
|
||||||
|
|
||||||
|
$dbh->do(q{
|
||||||
|
ALTER TABLE `biblioitems`
|
||||||
|
MODIFY COLUMN `publishercode` text DEFAULT NULL COMMENT 'publisher (MARC21 260$b and 264$b)'
|
||||||
|
});
|
||||||
|
say $out "Updated biblioitems.publishercode to text";
|
||||||
|
$dbh->do(q{
|
||||||
|
ALTER TABLE `deletedbiblioitems`
|
||||||
|
MODIFY COLUMN `publishercode` text DEFAULT NULL COMMENT 'publisher (MARC21 260$b and 264$b)'
|
||||||
|
});
|
||||||
|
say $out "Updated deletedbiblioitems.publishercode to text";
|
||||||
|
|
||||||
|
$dbh->do(q{
|
||||||
|
ALTER TABLE `biblioitems`
|
||||||
|
MODIFY COLUMN `size` text DEFAULT NULL COMMENT 'material size (MARC21 300$c)'
|
||||||
|
});
|
||||||
|
say $out "Updated biblioitems.size to text";
|
||||||
|
$dbh->do(q{
|
||||||
|
ALTER TABLE `deletedbiblioitems`
|
||||||
|
MODIFY COLUMN `size` text DEFAULT NULL COMMENT 'material size (MARC21 300$c)'
|
||||||
|
});
|
||||||
|
say $out "Updated deletedbiblioitems.size to text";
|
||||||
|
|
||||||
|
$dbh->do(q{
|
||||||
|
ALTER TABLE `biblioitems`
|
||||||
|
MODIFY COLUMN `pages` text DEFAULT NULL COMMENT 'number of pages (MARC21 300$a)'
|
||||||
|
});
|
||||||
|
say $out "Updated biblioitems.pages to text";
|
||||||
|
$dbh->do(q{
|
||||||
|
ALTER TABLE `deletedbiblioitems`
|
||||||
|
MODIFY COLUMN `pages` text DEFAULT NULL COMMENT 'number of pages (MARC21 300$a)'
|
||||||
|
});
|
||||||
|
say $out "Updated deletedbiblioitems.pages to text";
|
||||||
|
|
||||||
|
$dbh->do(q{
|
||||||
|
ALTER TABLE `biblioitems`
|
||||||
|
MODIFY COLUMN `illus` text DEFAULT NULL COMMENT 'illustrations (MARC21 300$b)'
|
||||||
|
});
|
||||||
|
say $out "Updated biblioitems.illus to text";
|
||||||
|
$dbh->do(q{
|
||||||
|
ALTER TABLE `deletedbiblioitems`
|
||||||
|
MODIFY COLUMN `illus` text DEFAULT NULL COMMENT 'illustrations (MARC21 300$b)'
|
||||||
|
});
|
||||||
|
say $out "Updated deletedbiblioitems.illus to text";
|
||||||
|
|
||||||
|
},
|
||||||
|
};
|
|
@ -1123,7 +1123,7 @@ CREATE TABLE `biblioitems` (
|
||||||
`issn` longtext DEFAULT NULL COMMENT 'ISSN (MARC21 022$a)',
|
`issn` longtext DEFAULT NULL COMMENT 'ISSN (MARC21 022$a)',
|
||||||
`ean` longtext DEFAULT NULL,
|
`ean` longtext DEFAULT NULL,
|
||||||
`publicationyear` mediumtext DEFAULT NULL,
|
`publicationyear` mediumtext DEFAULT NULL,
|
||||||
`publishercode` varchar(255) DEFAULT NULL COMMENT 'publisher (MARC21 260$b)',
|
`publishercode` text DEFAULT NULL COMMENT 'publisher (MARC21 260$b and 246$b)',
|
||||||
`volumedate` date DEFAULT NULL,
|
`volumedate` date DEFAULT NULL,
|
||||||
`volumedesc` mediumtext DEFAULT NULL COMMENT 'volume information (MARC21 362$a)',
|
`volumedesc` mediumtext DEFAULT NULL COMMENT 'volume information (MARC21 362$a)',
|
||||||
`collectiontitle` longtext DEFAULT NULL,
|
`collectiontitle` longtext DEFAULT NULL,
|
||||||
|
@ -1132,11 +1132,11 @@ CREATE TABLE `biblioitems` (
|
||||||
`editionstatement` mediumtext DEFAULT NULL,
|
`editionstatement` mediumtext DEFAULT NULL,
|
||||||
`editionresponsibility` mediumtext DEFAULT NULL,
|
`editionresponsibility` mediumtext DEFAULT NULL,
|
||||||
`timestamp` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
|
`timestamp` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
|
||||||
`illus` varchar(255) DEFAULT NULL COMMENT 'illustrations (MARC21 300$b)',
|
`illus` text DEFAULT NULL COMMENT 'illustrations (MARC21 300$b)',
|
||||||
`pages` varchar(255) DEFAULT NULL COMMENT 'number of pages (MARC21 300$c)',
|
`pages` text DEFAULT NULL COMMENT 'number of pages (MARC21 300$a)',
|
||||||
`notes` longtext DEFAULT NULL,
|
`notes` longtext DEFAULT NULL,
|
||||||
`size` varchar(255) DEFAULT NULL COMMENT 'material size (MARC21 300$c)',
|
`size` text DEFAULT NULL COMMENT 'material size (MARC21 300$c)',
|
||||||
`place` varchar(255) DEFAULT NULL COMMENT 'publication place (MARC21 260$a)',
|
`place` text DEFAULT NULL COMMENT 'publication place (MARC21 260$a and 264$a)',
|
||||||
`lccn` longtext DEFAULT NULL COMMENT 'library of congress control number (MARC21 010$a)',
|
`lccn` longtext DEFAULT NULL COMMENT 'library of congress control number (MARC21 010$a)',
|
||||||
`url` mediumtext DEFAULT NULL COMMENT 'url (MARC21 856$u)',
|
`url` mediumtext DEFAULT NULL COMMENT 'url (MARC21 856$u)',
|
||||||
`cn_source` varchar(10) DEFAULT NULL COMMENT 'classification source (MARC21 942$2)',
|
`cn_source` varchar(10) DEFAULT NULL COMMENT 'classification source (MARC21 942$2)',
|
||||||
|
@ -2526,7 +2526,7 @@ CREATE TABLE `deletedbiblioitems` (
|
||||||
`issn` longtext DEFAULT NULL COMMENT 'ISSN (MARC21 022$a)',
|
`issn` longtext DEFAULT NULL COMMENT 'ISSN (MARC21 022$a)',
|
||||||
`ean` longtext DEFAULT NULL,
|
`ean` longtext DEFAULT NULL,
|
||||||
`publicationyear` mediumtext DEFAULT NULL,
|
`publicationyear` mediumtext DEFAULT NULL,
|
||||||
`publishercode` varchar(255) DEFAULT NULL COMMENT 'publisher (MARC21 260$b)',
|
`publishercode` text DEFAULT NULL COMMENT 'publisher (MARC21 260$b and 264$b)',
|
||||||
`volumedate` date DEFAULT NULL,
|
`volumedate` date DEFAULT NULL,
|
||||||
`volumedesc` mediumtext DEFAULT NULL COMMENT 'volume information (MARC21 362$a)',
|
`volumedesc` mediumtext DEFAULT NULL COMMENT 'volume information (MARC21 362$a)',
|
||||||
`collectiontitle` longtext DEFAULT NULL,
|
`collectiontitle` longtext DEFAULT NULL,
|
||||||
|
@ -2535,11 +2535,11 @@ CREATE TABLE `deletedbiblioitems` (
|
||||||
`editionstatement` mediumtext DEFAULT NULL,
|
`editionstatement` mediumtext DEFAULT NULL,
|
||||||
`editionresponsibility` mediumtext DEFAULT NULL,
|
`editionresponsibility` mediumtext DEFAULT NULL,
|
||||||
`timestamp` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
|
`timestamp` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
|
||||||
`illus` varchar(255) DEFAULT NULL COMMENT 'illustrations (MARC21 300$b)',
|
`illus` text DEFAULT NULL COMMENT 'illustrations (MARC21 300$b)',
|
||||||
`pages` varchar(255) DEFAULT NULL COMMENT 'number of pages (MARC21 300$c)',
|
`pages` text DEFAULT NULL COMMENT 'number of pages (MARC21 300$a)',
|
||||||
`notes` longtext DEFAULT NULL,
|
`notes` longtext DEFAULT NULL,
|
||||||
`size` varchar(255) DEFAULT NULL COMMENT 'material size (MARC21 300$c)',
|
`size` text DEFAULT NULL COMMENT 'material size (MARC21 300$c)',
|
||||||
`place` varchar(255) DEFAULT NULL COMMENT 'publication place (MARC21 260$a)',
|
`place` text DEFAULT NULL COMMENT 'publication place (MARC21 260$a and 264§a)',
|
||||||
`lccn` longtext DEFAULT NULL COMMENT 'library of congress control number (MARC21 010$a)',
|
`lccn` longtext DEFAULT NULL COMMENT 'library of congress control number (MARC21 010$a)',
|
||||||
`url` mediumtext DEFAULT NULL COMMENT 'url (MARC21 856$u)',
|
`url` mediumtext DEFAULT NULL COMMENT 'url (MARC21 856$u)',
|
||||||
`cn_source` varchar(10) DEFAULT NULL COMMENT 'classification source (MARC21 942$2)',
|
`cn_source` varchar(10) DEFAULT NULL COMMENT 'classification source (MARC21 942$2)',
|
||||||
|
|
Loading…
Reference in a new issue