数据迁移

新建一个students表的迁移文件
php artisan make:migration create_students_table
--table和--create参数可以用来指定数据表名称以及迁移文件是否要建立新的数据表。
例如:
php artisan make:migration create_students_table --create=students
之后会在迁移文件中默认生成一个id字段和一个timestamps()---它会生成create_at和update_at字段。
生成模型的同时生成迁移文件
php artisan make:model Student -m
-m参数会创建该模型对应的迁移文件。

laravel假定每个数据表都有一个数值型的主键(id),laravel只有在每个表都有数值型主键时才会正常运行。所以,对于每一个laravel应用,都要确保定义的主键使用的是increments()方法。
 每个迁移类都包含两个方法:up方法可为数据库添加新的数据表,字段或索引;而down方法则是回滚数据库迁移。
 创建完迁移文件后执行php artisan migrate生成相应数据表。
数据填充

创建一个填充文件
php artisan make:seeder StudentTableSeeder
执行单个填充文件
php artisan db:seed --class=StudentTableSeeder
批量执行填充文件
php artisan db:seed
填充文件创建好后可以在run()方法中插入任何你想插入的数据,可以使用查询构造器手动插入,也可以使用eloquent插入。
例如:

DB::table(‘books’)->insert([
[‘isbn’ => ‘978-7-115-39409-5’, ‘name’ => ‘The Little Prince’],
[‘isbn’ => ‘960-1-123-12223-4’, ‘name’ => ‘Oliver Twist’],
]);

之后执行
php artisan db:seed --class=BookTableSeeder
执行成功后会在数据库中看到填充的数据。

如果需要批量执行填充,需要先在DatabaseSeeder.php文件中引入一下:
$this->call(BookTableSeeder::class);
之后执行php artisan db:seed就会又增加两条数据。
如何想要改变数据表,可以执行php artisan migrate:refresh命令来重新创建整个数据库。
如果想要刷新数据库并执行数据填充,则执行php artisan migrate:refresh --seed命令。

作者:zizhan
链接:https://www.jianshu.com/p/17feb09ebeb2
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值