gpt4 book ai didi

php - 我可以使用 RedBean PHP ORM 导出 Sqlite 数据库并导入到 MySQL 吗?

转载 作者:IT王子 更新时间:2023-10-29 00:36:27 26 4
gpt4 key购买 nike

我有一个简单的 Web 应用程序,我一直在使用 redbean PHP 构建它,它具有非常简单的结构,包含三种 bean 类型:

领域建筑物人

所有关系都是互斥的 1:Many。所以,一个Person只属于1个Building,一个Building属于1个Area

Area
BuildingList
PersonList

目前为了开发方便,一直在使用Sqlite3开发,但是想把数据移动到mySQL。我已经添加了很多数据。

有没有一种简单的方法可以使用 RedBean 将所有 bean 导出到新的 MySql 数据库?

我知道我可以搜索 sqlite -> MySQL/MariaDB 转换器,但我也可能希望能够使用它反过来使迁移站点 super 容易移动/备份/更改数据库。

我在下面尝试过的:

R::setup('sqlite:/' . __DIR__ . '/data/database.db'); 
R::addDatabase('mysql', $MySqlConn );

$old_datas = R::findAll( 'area' );
R::selectDatabase( 'mysql' );

foreach ($old_datas as $bean) {
$new_area = R::dispense('area');
$new_area->importFrom( $bean );
$id = R::store( $new_area );
var_dump( $new_area ); // shows new data
}

var_dump( R::findAll( 'area' ) ); // returns empty array

最佳答案

我会先说我个人没有尝试这样做,但是由于您可以通过 sqlite3 控制台转储整个数据库,所以我的第一种方法是这样做,然后尝试导入该文件进入 MySQL。

从 sqlite 控制台转储一个 sqlite3 数据库:

sqlite> 输出 database_dump.sql
sqlite> .dump
sqlite> .quit

将 .sql 文件导入 MySQL(如 here 所述):

mysql> 使用 DATABASE_NAME
mysql> source path/to/file.sql

关于php - 我可以使用 RedBean PHP ORM 导出 Sqlite 数据库并导入到 MySQL 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34624085/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com