laravel解决迁移文件一次删除创建字段报错的问题
吾爱主题
阅读:160
2021-09-14 15:37:00
评论:0
需求:通过写迁移文件更新user表中 topic 字段类型,从原来的varchar到json。
因为无法直接修改成json数据类型,只能采用先删除在创建的方式。
迁移文件代码如下:
?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateUserTable extends Migration{ /** * 运行迁移 * * @return void */ public function up() { Schema::create( 'user' , function (Blueprint $table ) { if (Schema::hasColumn( 'topic' )) { $table ->dropColumn( 'topic' ); } $table ->json( 'topic' )->comment( '主题' ); }); } /** * 撤销迁移 * * @return void */ public function down() { // } } |
执行迁移文件报错,提示topic这个字段已经存在。
但是很显然上面已经删除了,但是 删除创建分开两次执行,一切正常。
猜想:可能是迁移文件执行类型与实务,一起提交才成功。后续有机会验证
以上这篇laravel解决迁移文件一次删除创建字段报错的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/hu_feng903/article/details/79490707
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。