我和Laravel是新来的,并开始了我的个人项目。
Laravel提供了为我们的数据库创建模式的迁移。我在执行的选择上有困难。我的想法是:
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('username',300)->unique();
$table->string('email',300)->unique();
$table->string('password',100);
})DB::statement在Laravel中执行sql我试图用谷歌搜索哪种方法更好,但没有一个答案能让我满意。
哪种方法在工业中使用得更好或最常用?如果你有其他建议的话,我很高兴知道。
发布于 2019-08-22 15:17:29
Laravel Schema是一种抽象,大多数情况下是数据库独立的,也就是说,如果在laravel源或外部库中已经有一个grammar,那么您可以对不同的数据库引擎使用相同的迁移,处理一些小问题。
如果您使用Raw SQL,您可以,以防万一,取决于实际使用的Database Engine。
Laravel有这样的语法:MySQL,PostgreSQL,SQLite和SQLServer。
如果使用内置Schema,则可以在上述任何数据库引擎中使用相同的migrations,而不必过多地担心实际的SQL实现。
考虑到许多开发人员都有一个本地开发环境,其中有一个简单的数据库引擎,比如SQLite,有时当他们启动一个项目时,他们甚至不知道生产中将使用的数据库引擎。考虑一下您想要更改主机提供商的情况,或者您在廉价提供商上有一个demo project,而在其他地方则有一个production。
https://stackoverflow.com/questions/57610735
复制相似问题