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 相关文章推荐
用来给图片加水印的PHP类
Apr 09 PHP
基于Linux调试工具strace与gdb的常用命令总结
Jun 03 PHP
有关于PHP中常见数据类型的汇总分享
Jan 06 PHP
php表单提交与$_POST实例分析
Jan 26 PHP
PHP中实现接收多个name相同但Value不相同表单数据实例
Feb 03 PHP
PHP超牛逼无限极分类生成树方法
May 11 PHP
PHP 以POST方式提交XML、获取XML,解析XML详解及实例
Oct 26 PHP
yii2中dropDownList实现二级和三级联动写法
Apr 26 PHP
PHP实现下载远程图片保存到本地的方法
Jun 19 PHP
PHP 进度条函数的简单实例
Sep 19 PHP
laravel5表单唯一验证的实例代码
Sep 30 PHP
实例讲解PHP表单
Jun 10 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
PHP3 safe_mode 失效漏洞
2006/10/09 PHP
基于curl数据采集之正则处理函数get_matches的使用
2013/04/28 PHP
ThinkPHP模板中数组循环实例
2014/10/30 PHP
PHP开发制作一个简单的活动日程表Calendar
2016/06/20 PHP
juqery 学习之五 文档处理 包裹、替换、删除、复制
2011/02/11 Javascript
15款优秀的jQuery导航菜单插件分享
2011/07/19 Javascript
高效的获取当前元素是父元素的第几个子元素
2013/10/15 Javascript
ECMAScript 6即将带给我们新的数组操作方法前瞻
2015/01/06 Javascript
JavaScript对象反射用法实例
2015/04/17 Javascript
js图片轮播特效代码分享
2015/09/07 Javascript
Jquery easyui 实现动态树
2015/11/17 Javascript
详解JavaScript基于面向对象之创建对象(2)
2015/12/10 Javascript
js获取元素的外链样式的简单实现方法
2016/06/06 Javascript
使用JS实现图片展示瀑布流效果(简单实例)
2016/09/06 Javascript
Angular.js中定时器循环的3种方法总结
2017/04/27 Javascript
vue.js移动端tab组件的封装实践实例
2017/06/30 Javascript
Cropper.js 实现裁剪图片并上传(PC端)
2017/08/20 Javascript
浅谈Vue.js 组件中的v-on绑定自定义事件理解
2017/11/17 Javascript
如何使用puppet替换文件中的string
2018/12/06 Javascript
聊聊Vue中provide/inject的应用详解
2019/11/10 Javascript
Node.js Domain 模块实例详解
2020/03/18 Javascript
vue组件添加事件@click.native操作
2020/10/30 Javascript
Python实现Mysql数据库连接池实例详解
2017/04/11 Python
Django ORM框架的定时任务如何使用详解
2017/10/19 Python
python实现随机森林random forest的原理及方法
2017/12/21 Python
解决Django数据库makemigrations有变化但是migrate时未变动问题
2018/05/30 Python
Python 实现「食行生鲜」签到领积分功能
2018/09/26 Python
Python数据可视化库seaborn的使用总结
2019/01/15 Python
Django后端发送小程序微信模板消息示例(服务通知)
2019/12/17 Python
Python爬虫开发与项目实战
2020/12/16 Python
Abbacino官网:包、钱包和女士配饰
2019/04/15 全球购物
意大利奢侈品零售商:ilDuomo Novara
2019/09/11 全球购物
《二泉映月》教学反思
2014/04/15 职场文书
小学教师先进事迹材料
2014/12/15 职场文书
2015年大学生工作总结
2015/04/21 职场文书
公司晚会主持词
2019/04/17 职场文书