本地开发中的数据库和线上发布的数据库是不一样的,每进行一个线上版本的更新,很可能也涉及大量数据库的改动,那么这些数据库的改动在laravel中可以使用数据库迁移来处理。
比如我想创建一张flights数据表
执行php artisan make:migration create_flights_table命令就能自动生成迁移

如上图所示,相当方便,然后修改下数据库引擎为InnoDB,增加表注释,再新增name和airline两个字符串的字段,代码如下
$table->engine('InnoDB');
$table->comment('航班');
$table->string('name');
$table->string('airline');
 
在实际开发中,一个版本的开发往往不止创建一张数据表。
如果这时候想要查看所有迁移的状态,执行以下命令
php artisan migrate:status
如果想看看迁移将要执行的SQL语句,执行以下命令
php artisan migrate --pretend
这个命令用于创建数据表还行,用在重命名列名就会报错,用在别的地方报错就不用执行这个命令,跳过这个命令执行下一个命令就好。
最后将未完成的迁移执行,这样数据库操作才最终在数据库中产生效果

















![[免费]SpringBoot+Vue毕业设计论文管理系统【论文+源码+SQL脚本】](https://i-blog.csdnimg.cn/direct/6e930f3dde3c4f2bb9cf4501c8642e1c.jpeg)

