迁移:创建数据表,删除数据表+修改数据表
填充:往数据表里填充写入测试的数据(数据的插入操作)
1,数据的迁移操作
在迁移过程中,操作可以分为两部分:创建与编写迁移文件(创建&编写sql),执行迁移文件(执行sql)
1.1迁移文件的创建与编写
迁移文件默认位置
(1)创建迁移文件
创建试卷的数据表,数据表的名字叫做paper,迁移文件名:create_paper_table
利用artisan命令来执行:
php artisan make:migration create_paper_table
up方法表示创建数据表的方法
down方法表示删除数据表的方法
(2)编写迁移文件代码,
1.2,执行迁移文件
up方法的执行
如果在当前的项目中第一次执行迁移文件,则需要先去执行 php artisan migrate:install,不是第一次:php artisan migrate
执行命令之后,在数据表中会多出一个数据表,migrations和paper
migration:已经执行过的迁移文件名
batch:批次号,执行的序号
批次号:同一次被执行的多个迁移文件其批次号相同
需要删除系统自带的迁移文件,只保留自己的
删除原因:默认迁移操作会执行迁移文件夹中没有被执行的迁移文件
Down方法执行:(回滚操作,删除数据表)
【回滚最后一次的迁移操作,针对的批次号,不是单个表,回滚操作不删除迁移文件】
回滚操作只删除迁移表中的记录和对应的数据表,其他操作不执行
php artisan migrate:rollback
2,数据表填充器
2.1,填充器(种子文件)的创建与编写
(1)填充器默认所在目录
填充器允许一个填充器填充所有的数据表的(也可以一个表一个填充器,也可以一个填充器填充2个或多个表)
(2)创建填充器
php artisan make:seeder 填充器名称
【大写表名+TableSeeder】
php artisan make:seeder PaperTableSeeder
(3)【重点】编写填充器代码,实现往数据表里写入数据
注意:在填充器文件中科院使用DB门面去新增数据,但是需要注意,DB门面在使用的时候不需要用户自己引入,一旦引入则报错,可以直接引用,
2.2,执行填充器文件
命令:php artisan db:seed --class=需要执行的种子文件名(不带.php)
执行之后数据表中对应的数据就存在了