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实现的获取URL信息的类
Jan 02 PHP
修改Zend引擎实现PHP源码加密的原理及实践
Apr 14 PHP
php中对xml读取的相关函数的介绍一
Jun 05 PHP
php pcntl_fork和pcntl_fork 的用法
Apr 13 PHP
PHP 多维数组排序实现代码
Aug 05 PHP
MySQL连接数超过限制的解决方法
Jul 17 PHP
php 多关键字 高亮显示实现代码
Apr 23 PHP
PHP递归调用的小技巧讲解
Feb 19 PHP
ThinkPHP模板判断输出Empty标签用法详解
Jun 30 PHP
WordPress后台中实现图片上传功能的实例讲解
Jan 11 PHP
PHP MYSQL实现登陆和模糊查询两大功能
Feb 05 PHP
laravel-admin的图片删除实例
Sep 30 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 设计模式之 单例模式
2008/12/19 PHP
php采用curl实现伪造IP来源的方法
2014/11/21 PHP
CodeIgniter基于Email类发邮件的方法
2016/03/29 PHP
PHP实现的多进程控制demo示例
2019/07/22 PHP
解决laravel groupBy 对查询结果进行分组出现的问题
2019/10/09 PHP
javascript Excel操作知识点
2009/04/24 Javascript
Array.prototype.concat不是通用方法反驳[译]
2012/09/20 Javascript
js模仿jquery的写法示例代码
2013/06/16 Javascript
js无提示关闭浏览器窗口的两种方法分析
2016/11/06 Javascript
详解前端自动化工具gulp自动添加版本号
2016/12/20 Javascript
Angular2开发——组件规划篇
2017/03/28 Javascript
node.js利用mongoose获取mongodb数据的格式化问题详解
2017/10/06 Javascript
three.js实现3D模型展示的示例代码
2017/12/31 Javascript
深入理解js A*寻路算法原理与具体实现过程
2018/12/13 Javascript
JS+php后台实现文件上传功能详解
2019/03/02 Javascript
js核心基础之闭包的应用实例分析
2019/05/11 Javascript
django js 实现表格动态标序号的实例代码
2019/07/12 Javascript
小程序接入腾讯位置服务的详细流程
2020/03/03 Javascript
js实现微信聊天效果
2020/08/09 Javascript
Python动态加载模块的3种方法
2014/11/22 Python
在主机商的共享服务器上部署Django站点的方法
2015/07/22 Python
使用XML库的方式,实现RPC通信的方法(推荐)
2017/06/14 Python
Python实现的rsa加密算法详解
2018/01/24 Python
python操作oracle的完整教程分享
2018/01/30 Python
PyTorch学习笔记之回归实战
2018/05/28 Python
numpy concatenate数组拼接方法示例介绍
2019/05/27 Python
基于python-opencv3的图像显示和保存操作
2019/06/27 Python
解决Django中调用keras的模型出现的问题
2019/08/07 Python
Python类型转换的魔术方法详解
2020/12/23 Python
CSS3利用text-shadow属性实现多种效果的文字样式展现方法
2016/08/25 HTML / CSS
html5 datalist标签使用示例(自动完成组件)
2014/05/04 HTML / CSS
法学专业毕业生自荐信范文
2013/12/18 职场文书
酒店总经理助理职责
2014/02/12 职场文书
设计大赛策划方案
2014/06/13 职场文书
中职毕业生自我鉴定
2014/09/13 职场文书
工作简报范文
2015/07/21 职场文书