From 048bb8e4aa3d6ede09feae10e52a07cf29b11ec2 Mon Sep 17 00:00:00 2001 From: gCharmes Date: Fri, 25 May 2012 13:16:36 +0000 Subject: [PATCH] [-] INSTALLER : Add missing key on image product --- install-dev/data/db_structure.sql | 3 ++- .../upgrade/php/add_missing_image_key.php | 18 ++++++++++++++++++ install-dev/upgrade/sql/1.5.0.13.sql | 3 +++ 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 install-dev/upgrade/php/add_missing_image_key.php create mode 100644 install-dev/upgrade/sql/1.5.0.13.sql diff --git a/install-dev/data/db_structure.sql b/install-dev/data/db_structure.sql index f8c57eb97..3d17ef353 100644 --- a/install-dev/data/db_structure.sql +++ b/install-dev/data/db_structure.sql @@ -871,7 +871,8 @@ CREATE TABLE `PREFIX_image` ( `cover` tinyint(1) unsigned NOT NULL default '0', PRIMARY KEY (`id_image`), KEY `image_product` (`id_product`), - KEY `id_product_cover` (`id_product`,`cover`) + KEY `id_product_cover` (`id_product`,`cover`), + UNIQUE KEY `idx_product_image` (`id_image`, `id_product`, `cover`) ) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; CREATE TABLE `PREFIX_image_lang` ( diff --git a/install-dev/upgrade/php/add_missing_image_key.php b/install-dev/upgrade/php/add_missing_image_key.php new file mode 100644 index 000000000..94c88138a --- /dev/null +++ b/install-dev/upgrade/php/add_missing_image_key.php @@ -0,0 +1,18 @@ +executeS('SHOW INDEX + FROM `'._DB_PREFIX_.'image` + WHERE Key_name = \'idx_product_image\''); + if ($key_exists) + $res &= Db::getInstance()->execute('ALTER TABLE + `'._DB_PREFIX_.'image` + DROP KEY `idx_product_image`'); + $res &= Db::getInstance()->execute('ALTER TABLE + `'._DB_PREFIX_.'image` + ADD UNIQUE `idx_product_image` (`id_image`, `id_product`, `cover`)'); + + return $res; +} diff --git a/install-dev/upgrade/sql/1.5.0.13.sql b/install-dev/upgrade/sql/1.5.0.13.sql new file mode 100644 index 000000000..69c431ffd --- /dev/null +++ b/install-dev/upgrade/sql/1.5.0.13.sql @@ -0,0 +1,3 @@ +SET NAMES 'utf8'; + +/* PHP:add_missing_image_key(); */;