Cakephp 控制台架构更新和新表
我正在尝试用蛋糕模式更新mysql数据库。在旧数据库中,我有两个表。在我试图更新的新表中,有两个新表 当我执行蛋糕架构更新时,它抛出一个错误: SQLSTATE[42S02]:未找到基表或视图:1146表“db.new_table”不存在 很明显,因为这两个新表不存在,所以CakeConsole应该首先创建它们Cakephp 控制台架构更新和新表,cakephp,Cakephp,我正在尝试用蛋糕模式更新mysql数据库。在旧数据库中,我有两个表。在我试图更新的新表中,有两个新表 当我执行蛋糕架构更新时,它抛出一个错误: SQLSTATE[42S02]:未找到基表或视图:1146表“db.new_table”不存在 很明显,因为这两个新表不存在,所以CakeConsole应该首先创建它们 我使用的是2.3版。是否有任何选项可以更正此错误?还是在以后的版本中解决了这个问题?最后我升级到了最新版本(2.5.5)。现在,模式更新可以完美地工作。因为第379-393行有一些更改,
我使用的是2.3版。是否有任何选项可以更正此错误?还是在以后的版本中解决了这个问题?最后我升级到了最新版本(2.5.5)。现在,模式更新可以完美地工作。因为第379-393行有一些更改,其中检查表的存在
if (empty($table)) {
foreach ($compare as $table => $changes) {
if (isset($compare[$table]['create'])) {
$contents[$table] = $db->createSchema($Schema, $table);
} else {
$contents[$table] = $db->alterSchema(array($table => $compare[$table]), $table);
}
}
} elseif (isset($compare[$table])) {
if (isset($compare[$table]['create'])) {
$contents[$table] = $db->createSchema($Schema, $table);
} else {
$contents[$table] = $db->alterSchema(array($table => $compare[$table]), $table);
}
}