我正在将数据从 OpenCart 迁移到 Drupal 7。我有专门为 Drupal 7 设置的主数据库。安装了 Drupal。我在同一台服务器上创建了一个辅助数据库,它是我将从中迁移的 OpenCart 数据库的副本。
我这样做是因为有很多重叠的表,老实说,我真的不想将这两个数据库合并在一起,因为我将在迁移产品和相关信息后立即转储 OpenCart 数据库。
无论如何,我发现即使 Drupal 7 很容易支持这一点,它似乎在您尝试在辅助数据库上执行任何查询的那一秒时就崩溃了。废话我的意思是“白屏死机”废话。如果我启用了开发模块的数据库查询日志记录,那么它会在 WSOD 上输出该信息的一些未格式化的行。
下面是我用来执行此操作的代码示例。如您所见,即使是一个简单的 select 语句也会完全炸毁。有谁知道为什么会发生这种情况?
我真的很想完成这项工作并使用 migrate 模块来完成。但是我即将举手,只是编写一个自定义脚本来连接到数据库并将所有数据输出为一个巨大的 XML 文件,然后希望 migrate 模块可以处理它(或将聚合数据导入临时在某些时候表)。
$query = Database::getConnection('opencart', 'opencart')->query("SELECT * FROM product");
if ($query != NULL) {
$row = $query->execute()->fetchObject();
echo "<pre>" . print_r($row, true) . "</pre>";
echo "<pre>" . print_r($query, true) . "</pre>";
}
else {
echo "Query is NULL.";
}