diff --git a/install-dev/upgrade/php/p15017_add_id_shop_to_primary_key.php b/install-dev/upgrade/php/p15017_add_id_shop_to_primary_key.php new file mode 100644 index 000000000..964da1b6a --- /dev/null +++ b/install-dev/upgrade/php/p15017_add_id_shop_to_primary_key.php @@ -0,0 +1,38 @@ + +* @copyright 2007-2012 PrestaShop SA +* @version Release: $Revision: 13573 $ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function p15017_add_id_shop_to_primary_key() +{ + // The former primary keys where set on id_object and id_lang. They must now be set on id_shop too. + foreach (array('product', 'category', 'meta', 'carrier') as $table) + { + Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.$table.'_lang` DROP PRIMARY KEY'); + Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.$table.'_lang` ADD PRIMARY KEY (`id_'.$table.'`, `id_shop`, `id_lang`)'); + } + + return true; +}