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


Posted in PHP onOctober 23, 2019

数据库迁移是数据库的版本管理,要使用数据库迁移,需要在.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方法中,我们编写创建表的语句:

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表。

修改表

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

php artisan migrate:refresh

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

php artisan make:migration alter_moments_table

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

在 up 方法中:

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

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

以上这篇Laravel5.5 数据库迁移:创建表与修改表示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
第九节 绑定 [9]
Oct 09 PHP
php与php MySQL 之间的关系
Jul 17 PHP
php程序之die调试法 快速解决错误
Sep 17 PHP
PHP中$_SERVER的详细参数与说明介绍
Oct 26 PHP
php实现水仙花数的4个示例分享
Apr 08 PHP
php+mysqli事务控制实现银行转账实例
Jan 29 PHP
php封装的单文件(图片)上传类完整实例
Oct 18 PHP
PHP数据的提交与过滤基本操作实例详解
Nov 11 PHP
php查询及多条件查询
Feb 26 PHP
php判断str字符串是否是xml格式数据的方法示例
Jul 26 PHP
Yii2.0实现生成二维码功能实例
Oct 24 PHP
Yii2 中实现单点登录的方法
Mar 09 PHP
关于laravel5.5的定时任务详解(demo)
Oct 23 #PHP
laravel 出现command not found问题的解决方案
Oct 23 #PHP
关于laravel框架中的常用目录路径函数
Oct 23 #PHP
laravel 实现根据字段不同值做不同查询
Oct 23 #PHP
Laravel修改验证提示信息为中文的示例
Oct 23 #PHP
php装饰者模式简单应用案例分析
Oct 23 #PHP
laravel 数据验证规则详解
Oct 23 #PHP
You might like
PHP截取中文字符串的问题
2006/07/12 PHP
十天学会php之第五天
2006/10/09 PHP
在 Laravel 项目中使用 webpack-encore的方法
2019/07/21 PHP
Yii框架通过请求组件处理get,post请求的方法分析
2019/09/03 PHP
PHP使用PDO实现mysql防注入功能详解
2019/12/20 PHP
javascript 读取xml,写入xml 实现代码
2009/07/10 Javascript
js移除事件 js绑定事件实例应用
2012/11/28 Javascript
js自定义方法通过隐藏iframe实现文件下载
2013/02/21 Javascript
JS实现可关闭的对联广告效果代码
2015/09/14 Javascript
JS实现完全语义化的网页选项卡效果代码
2015/09/15 Javascript
详解Javascript事件驱动编程
2016/01/03 Javascript
jquery PrintArea 实现票据的套打功能(代码)
2017/03/17 Javascript
关于axios不能使用Vue.use()浅析
2018/01/12 Javascript
swiper在vue项目中loop循环轮播失效的解决方法
2018/09/15 Javascript
详解element-ui表格中勾选checkbox,高亮当前行
2019/09/02 Javascript
移动端手指操控左右滑动的菜单
2019/09/08 Javascript
[01:52]DOTA2完美大师赛Vega战队趣味视频——kpii老师小课堂
2017/11/25 DOTA
[58:15]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 NB vs Liquid
2018/04/02 DOTA
在Django的上下文中设置变量的方法
2015/07/20 Python
python+opencv轮廓检测代码解析
2018/01/05 Python
pandas 小数位数 精度的处理方法
2018/06/09 Python
python通过txt文件批量安装依赖包的实现步骤
2019/08/13 Python
Python中Yield的基本用法
2020/10/18 Python
HTML5 CSS3给网站设计带来出色效果
2009/07/16 HTML / CSS
css3编写浏览器背景渐变背景色的方法
2018/03/05 HTML / CSS
南威尔士家居商店:Leekes
2016/10/25 全球购物
英国在线电子和小工具商店:TecoBuy
2018/10/06 全球购物
什么是封装
2013/03/26 面试题
高中自我鉴定
2013/12/20 职场文书
责任胜于能力演讲稿
2014/05/20 职场文书
群教班子对照检查材料
2014/08/26 职场文书
关于开学的感想
2015/08/10 职场文书
小学2016年“我们的节日·重阳节”活动总结
2016/04/01 职场文书
详解Python类和对象内容
2021/06/22 Python
速龙x4-860k处理器相当于i几
2022/04/20 数码科技
CSS 实现角标效果的完整代码
2022/06/28 HTML / CSS