Laravel5.5 数据库迁移:创建表与修改表

2018-12-24 09:06:08来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

数据库迁移是数据库的版本管理,要使用数据库迁移,需要在.env文件中连接好数据库(不多说)。laravel本身已经存在user表和password_resets表的迁移了,因此,执行

php artisan migrate

便会在数据库中创建好user表、password_resets表和migrations表。migrations表是版本记录表。

命令执行的其实是 database\migration 下的迁移文件。迁移文件中调用的方法会替我们执行数据库操作(建表)。每个文件的命名对应迁移创建的时间和迁移的表名称。

现在我们要添加自己的迁移表。

创建迁移

方法一:创建数据模型的时候加上 -m ,例如:

php artisan make:model Models/Moment -m

就会在 database/migrations 下看到新建的迁移文件。打开文件,主要有 up 和 down 方法。

  • 当我们运行迁移时,up 方法会被调用;
  • 当我们回滚迁移时,down 方法会被调用。

方法二:

php artisan make:migration create_moments_table

其中 “moments” 就是要创建的表名,这里要写你自己的表名。 

创建表

在up方法中,我们编写创建表的语句:

 1 Schema::create('moments', function (Blueprint $table) {
 2  
 3     $table->increments('id');
 4  
 5     $table->integer('user_id');
 6  
 7     $table->string('title');
 8     
 9     $table->string('content');
10  
11     $table->timestamps();
12  
13 });

保存后执行 php artisan migrate ,会创建5个字段的moments表。

修改表

方法一:修改迁移文件,执行命令

php artisan migrate:refresh

方法二:如果要修改表,新建一个迁移文件:

php artisan make:migration alter_moments_table

 其中 “moments” 就是要修改的表名,这里要写你自己的表名。

在 up 方法中:

1 Schema::table('moments', function (Blueprint $table) { 
2     $table->string('test'); 
3 });

与创建表的区别是,create 方法改成 table 方法。

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:laravel使用Schema创建数据表

下一篇:laravel 数据库操作(表、字段)