Laravel中基于SQL的数据库迁移?

时间:2018-11-13 23:57:02

标签: laravel laravel-5

Laravel是否允许基于在Workbench中创建的现成SQL使用数据库迁移作为选项?

据我所知,现在建议按照特定格式手动编写迁移文件。

3 个答案:

答案 0 :(得分:1)

当然,没有什么可以阻止您在迁移中运行SQL。您可以在迁移过程中的export default { DocumentDir: () => {}, ImageCache: { get: { clear: () => {}, }, }, fs: { exists: existsMock, dirs: { MainBundleDir: () => {}, CacheDir: () => {}, DocumentDir: () => {}, }, }, }; 内部使用DB::statement()进行此操作。

up()

答案 1 :(得分:1)

是的,Laravel允许使用在Workbench中创建的现成SQL。您只需要将Laravel应用程序连接到数据库,就可以了。

在Laravel中使用迁移不是强制性的,但是在跟踪数据库结构的版本时非常有用。

由于跟踪数据库的结构非常重要,因此我建议您尝试使用以下软件包之一将SQL转换为Laravel迁移:

  1. MySQL Workbench Export Laravel 5 Migrations Plugin –的插件 用Python语言编写的流行软件MySQL Workbench
  2. Laravel Migration Exporter for Sequel Pro –续集的捆绑包 专业版,可让您从现有文件生成Laravel迁移文件 表。用PHP语言编写。

  3. Xethron Laravel Migrations Generator – Laravel工匠命令 工具,可作为Laravel软件包提供

Source

答案 2 :(得分:1)

几周前,我们为可视编辑器Skipper(https://www.skipper18.com)发布了对Laravel框架的支持。我想根据您的问题,这可能对您很有用。

您可以从数据库(MySql,Postgres,MSSQL或Sqlite)导入项目,并且将获得清晰的图形化图表,然后可以将其自动导出到模型类和迁移文件。

此外,您可以在模型中进行更改并创建新的迁移,并将所有更改重复地导出回Laravel PHP文件。所有这些都是通过用户友好的界面进行的。

如果您想尝试一下,它在测试版期间是完全免费的。您可以在https://www.skipper18.com/en/download处下载它,然后在初始应用程序许可证屏幕中选择“ Laravel Beta许可证”。