1.6.1.24 更新至 1.7.7.4 数据库架构错误

问题描述

在迭代之后,我正在沙箱升级 MAMP 中我的实时 Prestashop 网站的副本(免费):

  • 我的网站是 1.6.1.3

  • 我通过一键更新将所述的 1.6.1.3 更新为 1.6.1.24,一切顺利,然后我在卸载和删除时将 MAMP 从 PHP 5.6.40 更改为 7.1.33(按此顺序)所有非原生模块和主题评论和付费插件除外)

  • 我在不同的 htdocs 目录和不同的数据库中全新安装了 1.6.1.24,然后在模块评论和付费插件中复制了 img 文件夹和设置文件

  • 删除了 1.6.1.3 更新到 1.6.1.24 目录和全新安装的 1.6.1.24 数据库,并将 1.6.1.24 全新安装连接到 1.6.1.3 更新到 1.6.1.24 数据库,我修改了新鲜安装 1.6.1.24 目录以匹配已删除的更新目录

  • 所以我有一个全新安装的 PrestaShop 连接到我以前的历史完整数据库

  • 在整个过程中,我保持非本地模块和覆盖停用,并使用模块 Prestashop 清洁器 1.8 执行多个数据库结帐并恢复到官方主题,因此是一种非常“原始”的情况。

此时,我测试了我发现自己使用的本地网站的所有功能,一切正常,使用调试模式时没有错误,因此使用一键模块更新到PS 1.7感觉很舒服.7.4.

这里是数据库更新的情况和错误

Updating database schema...

Executing: CREATE TABLE ps_translation (id_translation INT AUTO_INCREMENT NOT NULL,id_lang INT NOT NULL,`key` TEXT NOT NULL COLLATE utf8_bin,translation TEXT NOT NULL,domain VARCHAR(80) NOT NULL,theme VARCHAR(32) DEFAULT NULL,INDEX IDX_ADEBEB36BA299860 (id_lang),INDEX `key` (domain),PRIMARY KEY(id_translation)) DEFAULT CHaraCTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB

Executing: CREATE TABLE ps_module_history (id INT AUTO_INCREMENT NOT NULL,id_employee INT NOT NULL,id_module INT NOT NULL,date_add DATETIME NOT NULL,date_upd DATETIME NOT NULL,PRIMARY KEY(id)) DEFAULT CHaraCTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB

Executing: CREATE TABLE ps_admin_filter (id INT AUTO_INCREMENT NOT NULL,employee INT NOT NULL,shop INT NOT NULL,controller VARCHAR(60) NOT NULL,action VARCHAR(100) NOT NULL,filter LONGTEXT NOT NULL,filter_id VARCHAR(191) NOT NULL,UNIQUE INDEX admin_filter_search_id_idx (employee,shop,controller,action,filter_id),PRIMARY KEY(id)) DEFAULT CHaraCTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB

Executing: DROP INDEX lang_iso_code ON ps_lang

Executing: ALTER TABLE ps_lang CHANGE active active tinyint(1) NOT NULL DEFAULT '0',CHANGE iso_code iso_code VARCHAR(2) NOT NULL,CHANGE language_code language_code VARCHAR(5) NOT NULL,CHANGE date_format_lite date_format_lite VARCHAR(32) NOT NULL DEFAULT 'Y-m-d',CHANGE date_format_full date_format_full VARCHAR(32) NOT NULL DEFAULT 'Y-m-d H:i:s',CHANGE is_rtl is_rtl tinyint(1) NOT NULL DEFAULT '0'

Executing: CREATE INDEX IDX_2F43BFC7BA299860 ON ps_lang_shop (id_lang)

Executing: ALTER TABLE ps_lang_shop RENAME INDEX id_shop TO IDX_2F43BFC7274A50A0

Executing: DROP INDEX id_lang ON ps_attribute_lang

Executing: CREATE INDEX IDX_3ABE46A77A4F53DC ON ps_attribute_lang (id_attribute)

Executing: CREATE INDEX IDX_3ABE46A7BA299860 ON ps_attribute_lang (id_lang)

Executing: DROP INDEX deleted ON ps_shop_group

Executing: ALTER TABLE ps_shop_group CHANGE active active tinyint(1) NOT NULL DEFAULT '1',CHANGE deleted deleted tinyint(1) NOT NULL DEFAULT '0'

Executing: DROP INDEX id_parent ON ps_tab

Executing: DROP INDEX class_name ON ps_tab

Executing: ALTER TABLE ps_tab ADD route_name VARCHAR(256) DEFAULT NULL,CHANGE position position INT NOT NULL,CHANGE active active tinyint(1) NOT NULL DEFAULT '1',CHANGE hide_host_mode hide_host_mode tinyint(1) NOT NULL DEFAULT '0',CHANGE icon icon VARCHAR(32) DEFAULT ''

Executing: DROP INDEX id_shop_group ON ps_shop

Executing: DROP INDEX id_category ON ps_shop

Executing: ALTER TABLE ps_shop CHANGE id_category id_category INT NOT NULL DEFAULT '1',CHANGE theme_name theme_name VARCHAR(255) NOT NULL,CHANGE deleted deleted tinyint(1) NOT NULL DEFAULT '0'

Executing: CREATE INDEX IDX_CBDFBB9EF5C9E40 ON ps_shop (id_shop_group)

Executing: ALTER TABLE ps_attribute CHANGE color VARCHAR(32) NOT NULL,CHANGE position INT NOT NULL DEFAULT '0'

01:24:42 ERROR [console] Error thrown while running command "prestashop:schema:update-without-foreign --env=prod". Message: "An exception occurred while executing 'ALTER TABLE ps_attribute CHANGE color color VARCHAR(32) NOT NULL,CHANGE position position INT NOT NULL DEFAULT '0' ':

sqlSTATE[01000]: Warning: 1265 Data truncated for column 'color' at row 20" ["exception" => Doctrine\DBAL\Exception\DriverException { …},"command" => "prestashop:schema:update-without-foreign --env=prod","message" => """ An exception occurred while executing 'ALTER TABLE ps_attribute CHANGE color color VARCHAR(32) NOT NULL,CHANGE position position INT NOT NULL DEFAULT '0' ':\n \n sqlSTATE[01000]: Warning: 1265 Data truncated for column 'color' at row 20 """]

In AbstractMysqLDriver.PHP line 106:


An exception occurred while executing 'ALTER TABLE ps_attribute CHANGE colo

r color VARCHAR(32) NOT NULL,CHANGE position INT NOT NULL DEFAULT

'0' ':


sqlSTATE[01000]: Warning: 1265 Data truncated for column 'color' at row 20


In PDOConnection.PHP line 90:


sqlSTATE[01000]: Warning: 1265 Data truncated for column 'color' at row 20


In PDOConnection.PHP line 88:


sqlSTATE[01000]: Warning: 1265 Data truncated for column 'color' at row 20


prestashop:schema:update-without-foreign [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-e|--env ENV] [--no-debug] [--id_shop [ID_SHOP]] [--id_shop_group [ID_SHOP_GROUP]] [--]

您有什么解决方案建议吗? 在继续 1.7.7.4 更新之前,如何解决引发问题的表以纠正它们? 非常感谢您提供的任何建议。

以下是出错时MAMP的规格: PHP:7.1.33

max_execution_time30000

max_file_uploads20

max_input_nesting_level64

max_input_time60000

max_input_vars10000

memory_limit1024M

post_max_size256M

网络服务器:Apache

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...