magento upgrade 1.5.1.0>> {1.6.2.0,1.7.0.2,1.8.0.0}我试图删除所有模块,直接升级复制文件和使用magento下载器,没有运气, 每次我收到这个错误。但它在哪里以及为何完全失败,如何正确调试呢?
Error in file: "Z:\home\www\store\app\code\core\Mage\Core\sql\core_setup\mysql4-upgrade-1.5.9.9-1.6.0.0.php"
- SQLSTATE[HY093]: Invalid parameter number: no parameters were bound
Trace:
#0 Z:\home\www\store\app\code\core\Mage\Core\Model\Resource\Setup.php(645): Mage::exception('Mage_Core', 'Error in file: ...')
#1 Z:\home\www\store\app\code\core\Mage\Core\Model\Resource\Setup.php(437): Mage_Core_Model_Resource_Setup->_modifyResourceDb('upgrade', '0.8.28', '1.6.0.3')
#2 Z:\home\www\store\app\code\core\Mage\Core\Model\Resource\Setup.php(320): Mage_Core_Model_Resource_Setup->_upgradeResourceDb('0.8.28', '1.6.0.3')
#3 Z:\home\www\store\app\code\core\Mage\Core\Model\Resource\Setup.php(235): Mage_Core_Model_Resource_Setup->applyUpdates()
#4 Z:\home\www\store\app\code\core\Mage\Core\Model\App.php(417): Mage_Core_Model_Resource_Setup::applyAllUpdates()
#5 Z:\home\www\store\app\code\core\Mage\Core\Model\App.php(343): Mage_Core_Model_App->_initModules()
#6 Z:\home\www\store\app\Mage.php(683): Mage_Core_Model_App->run(Array)
#7 Z:\home\www\store\index.php(87): Mage::run('', 'store')
#8 {main}
答案 0 :(得分:0)
启用PDO MySQL Debug需要编辑此文件: /lib/Varien/Db/Adapter/Pdo/Mysql.php
protected $_debug = true;
然后我们打开这个文件: /lib/Zend/Db/Statement/Pdo.php,并将此行替换为234:
throw new Zend_Db_Statement_Exception($e->getMessage(), (int) $e->getCode(), $e);
使用此代码:
$msg = "SQL ERROR: ". $e->getMessage() . "\n";
$msg .= "SQL QUERY:" . $this->_stmt->queryString."\n";
if(!empty($params)) {
$msg .= "SQL PARAMS: ('". implode("','", $params) ."')\n";
}
$dbsEx = new Zend_Db_Statement_Exception($msg, (int) $e->getCode(), $e);
throw $dbsEx;
现在我们将获得一个文件夹/ var / debug /,并将文件 pdo_mysql.log 在这个文件中我们现在已经完整的mysql错误与完整的mysql查询。 您可以轻松地在phpmyadmin中执行那些失败的查询或编辑数据库表,参数等。
我很高兴。