Laravel是否允许基于在Workbench中创建的现成SQL使用数据库迁移作为选项?
据我所知,现在建议按照特定格式手动编写迁移文件。
答案 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迁移:
Laravel Migration Exporter for Sequel Pro –续集的捆绑包 专业版,可让您从现有文件生成Laravel迁移文件 表。用PHP语言编写。
Xethron Laravel Migrations Generator – Laravel工匠命令 工具,可作为Laravel软件包提供
答案 2 :(得分:1)
几周前,我们为可视编辑器Skipper(https://www.skipper18.com)发布了对Laravel框架的支持。我想根据您的问题,这可能对您很有用。
您可以从数据库(MySql,Postgres,MSSQL或Sqlite)导入项目,并且将获得清晰的图形化图表,然后可以将其自动导出到模型类和迁移文件。
此外,您可以在模型中进行更改并创建新的迁移,并将所有更改重复地导出回Laravel PHP文件。所有这些都是通过用户友好的界面进行的。
如果您想尝试一下,它在测试版期间是完全免费的。您可以在https://www.skipper18.com/en/download处下载它,然后在初始应用程序许可证屏幕中选择“ Laravel Beta许可证”。