我是laravel
的新手。我知道如何使用laravel
迁移命令创建数据库。
我已经在mysql
中创建了数据库。那么我该如何将迁移从那个数据库转换过来。
对于现代版本的 Laravel,你应该使用像https://github.com/kitloong/laravel-migrations-generator这样的包。
看看Kitloong的这个软件包,非常容易使用。
https://github.com/kitloong/laravel-migrations-generator
安装后,只需运行类似以下内容的命令,将迁移导出到您选择的位置:
php artisan migrate:generate --path="path\to\existing\folder"
示例:
php artisan migrate:generate --path="C:\xampp\htdocs\laravel_bs4\database\migrations\my_new_migrations"
--path
选项,直接运行。php artisan migrate:generate
这会将其导出到默认的Laravel迁移文件夹(这通常不是我想要的内容)。
一定要遵循提示。通常遵循默认设置是可以的。
我快速编写了这个Python脚本,可以将现有的数据库生成迁移文件。
https://github.com/aljorhythm/sql-to-laravel-migrations
设置完成后,只需要执行以下命令:
python retrieve-and-convert.py
这是一个简单的解决方案,可以使用在线Laravel迁移生成器来生成现有SQL表模式的迁移文件,无需安装任何软件包。只需输入您的SQL模式即可获得Laravel迁移文件。尝试:https://laravelarticle.com/laravel-migration-generator-online
\
status` int(1) NOT NULL DEFAULT 1的SQL创建表定义,它输出了一行类似于
$table->integer('status',1)->default(1)的代码。
integer()`函数的第二个参数应该是自增布尔值。所以我一直收到类似于“只能有一个自动列”的错误。 - Tyler Collier这个怎么样?
迁移生成器。它是为Laravel 4、5、6和7设计的,但我不确定是否适用于Laravel 8。