From 002fa71b364930fab785817a3dd2fb7a38575d1b Mon Sep 17 00:00:00 2001 From: Paul Derscheid Date: Thu, 3 Jul 2025 12:36:30 +0000 Subject: [PATCH] Bug 40292: Specify full datatypes and comment as required for CHANGE COLUMN To test: 1. Follow the original test plan and compare the resulting tables to: MariaDB [koha_kohadev]> desc additional_field_values; +-----------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------+--------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | field_id | int(11) | NO | MUL | NULL | | | record_id | int(11) | NO | | NULL | | | value | varchar(255) | NO | | | | +-----------+--------------+------+-----+---------+----------------+ 4 rows in set (0.003 sec) MariaDB [koha_kohadev]> desc aqbookseller_aliases; +-----------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------+--------------+------+-----+---------+----------------+ | alias_id | int(11) | NO | PRI | NULL | auto_increment | | vendor_id | int(11) | NO | MUL | NULL | | | alias | varchar(255) | NO | | NULL | | +-----------+--------------+------+-----+---------+----------------+ 3 rows in set (0.004 sec) MariaDB [koha_kohadev]> desc aqbookseller_interfaces; +---------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------------+--------------+------+-----+---------+----------------+ | interface_id | int(11) | NO | PRI | NULL | auto_increment | | vendor_id | int(11) | NO | MUL | NULL | | | type | varchar(80) | YES | | NULL | | | name | varchar(255) | NO | | NULL | | | uri | mediumtext | YES | | NULL | | | login | varchar(255) | YES | | NULL | | | password | mediumtext | YES | | NULL | | | account_email | mediumtext | YES | | NULL | | | notes | longtext | YES | | NULL | | +---------------+--------------+------+-----+---------+----------------+ 9 rows in set (0.003 sec) The Type field should be the only deviation from the previous version, Null and Extra should be identical. 2. Run perl ../misc4dev/run_tests.pl --run-db-compare-only --compare-with v24.05.00 3. Sign off Co-authored-by: Victor Grousset/tuxayo Signed-off-by: Victor Grousset/tuxayo --- installer/data/mysql/db_revs/241200018.pl | 4 +++- installer/data/mysql/db_revs/241200042.pl | 2 +- installer/data/mysql/db_revs/241200043.pl | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/installer/data/mysql/db_revs/241200018.pl b/installer/data/mysql/db_revs/241200018.pl index 5507773824..1c5a438314 100755 --- a/installer/data/mysql/db_revs/241200018.pl +++ b/installer/data/mysql/db_revs/241200018.pl @@ -22,7 +22,9 @@ return { ); $dbh->do(q{ UPDATE additional_field_values SET new_record_id = CAST(record_id AS CHAR(11)); }); $dbh->do(q{ ALTER TABLE additional_field_values DROP COLUMN record_id; }); - $dbh->do(q{ ALTER TABLE additional_field_values CHANGE COLUMN new_record_id record_id VARCHAR(11); }); + $dbh->do( + q{ ALTER TABLE additional_field_values CHANGE COLUMN new_record_id record_id VARCHAR(11) NOT NULL DEFAULT '' COMMENT 'record_id'; } + ); say_success( $out, "Converted record_id to VARCHAR" ); } else { diff --git a/installer/data/mysql/db_revs/241200042.pl b/installer/data/mysql/db_revs/241200042.pl index f49864efb0..cc1ad50de4 100755 --- a/installer/data/mysql/db_revs/241200042.pl +++ b/installer/data/mysql/db_revs/241200042.pl @@ -12,7 +12,7 @@ return { if ( column_exists( 'aqbookseller_aliases', 'alias_id' ) ) { $dbh->do( q{ - ALTER TABLE aqbookseller_aliases CHANGE COLUMN alias_id vendor_alias_id INT(11); + ALTER TABLE aqbookseller_aliases CHANGE COLUMN alias_id vendor_alias_id INT(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key and unique identifier assigned by Koha'; } ); say_success( diff --git a/installer/data/mysql/db_revs/241200043.pl b/installer/data/mysql/db_revs/241200043.pl index 2b3926871d..468e17e818 100755 --- a/installer/data/mysql/db_revs/241200043.pl +++ b/installer/data/mysql/db_revs/241200043.pl @@ -12,7 +12,7 @@ return { if ( column_exists( 'aqbookseller_interfaces', 'interface_id' ) ) { $dbh->do( q{ - ALTER TABLE aqbookseller_interfaces CHANGE COLUMN interface_id vendor_interface_id INT(11); + ALTER TABLE aqbookseller_interfaces CHANGE COLUMN interface_id vendor_interface_id INT(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key and unique identifier assigned by Koha'; } ); say_success( -- 2.50.0