【发布时间】:2020-02-14 03:53:50
【问题描述】:
在我的项目中,我正在从 Codeigniter 迁移到 Laravel,同时我也开始使用 phpunit 测试。在这个项目中,有许多没有任何迁移的遗留数据库。我想从他们那里自动生成一个用于集成测试的测试数据库。
但我的想法有刺: 如果需要,如何自动生成现有的测试数据库并对其进行核对?现有项目中没有数据库迁移,所以我需要在新生成的项目中创建它们。
到目前为止,我使用 pg-dump 生成了我的数据库转储(我使用 postgresql 风格作为我的数据库)。转储是一个 sql 文件。我还使用以下命令创建了初始迁移:
php ./artisan make:migration --path ./database/migrations/myDb InitialDb
生成以下代码:
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class InitialDb extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
//Read and execute the sql dump.
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//Delete anything except the test data.
}
}
所以我想知道如何执行从生成的转储中生成的 sql 代码?
【问题讨论】:
标签: php laravel postgresql database-migration laravel-5.6