数据库迁移是数据库的版本管理,要使用数据库迁移,需要在.env文件中连接好数据库(不多说)。laravel本身已经存在user表和password_resets表的迁移了,因此,执行
1
|
php artisan migrate
|
便会在数据库中创建好user表、password_resets表和migrations表。migrations表是版本记录表。
命令执行的其实是 database\migration 下的迁移文件。迁移文件中调用的方法会替我们执行数据库操作(建表)。每个文件的命名对应迁移创建的时间和迁移的表名称。
现在我们要添加自己的迁移表。
创建迁移
方法一:创建数据模型的时候加上 -m ,例如:
1
|
php artisan make:model Models/Moment -m
|
就会在 database/migrations 下看到新建的迁移文件。打开文件,主要有 up 和 down 方法。
当我们运行迁移时,up 方法会被调用;
当我们回滚迁移时,down 方法会被调用。
方法二:
1
|
php artisan make:migration create_moments_table
|
其中 “moments” 就是要创建的表名,这里要写你自己的表名。
创建表
在up方法中,我们编写创建表的语句:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
Schema::create( 'moments' , function (Blueprint $table ) {
$table ->increments( 'id' );
$table ->integer( 'user_id' );
$table ->string( 'title' );
$table ->string( 'content' );
$table ->timestamps();
});
|
保存后执行 php artisan migrate ,会创建5个字段的article表。
修改表
方法一:修改迁移文件,执行命令
1
|
php artisan migrate:refresh
|
方法二:如果要修改表,新建一个迁移文件:
1
|
php artisan make:migration alter_moments_table
|
其中 “moments” 就是要修改的表名,这里要写你自己的表名。
在 up 方法中:
1
2
3
|
Schema::table( 'moments' , function (Blueprint $table ) {
$table ->string( 'test' );
});
|
与创建表的区别是,create 方法改成 table 方法。
以上这篇Laravel5.5 数据库迁移:创建表与修改表示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/qq_33514421/article/details/82952607