0

0

laravel 怎么更改表结构

藏色散人

藏色散人

发布时间:2021-12-31 11:59:04

|

2518人浏览过

|

来源于php中文网

原创

laravel更改表结构的方法:1、生成migration文件;2、执行命令“php artisan make:migration...”;3、添加“$table->text('images')->nullable()...”即可。

laravel 怎么更改表结构

本文操作环境:Windows7系统、Laravel5.7版、Dell G3电脑。

laravel 怎么更改表结构?

使用 laraval migration 修改数据库表结构

之前一直使用 sql 文件来保存并跟踪数据库表结构的变化。但是使用 sql 文件有以下弊端:

  • 无法判断哪些 sql 文件执行了,哪些没执行。虽然加了日期做为 sql 文件名前缀,但是在多人开发,且长时间没有更新线上数据表结构时,经常要挠头

  • 执行 sql 文件是件体力活。当你面对十几个 sql alter 文件时,逐个执行非常累心。

  • 多套开发、生产环境同步起来还是费时费力。例如,PC 开发机上进行了一次修改,还要同步到笔记本开发环境上,想想都难受。

这些问题,远不如执行一行 migration 来的痛快。

增加一个新字段

例如,我要给 articles 表增加一个 images 字段。

首先需要生成 migration 文件,执行命令

php artisan make:migration add_images_to_articles_table --table=articles

输出结果为

Created Migration: 2018_03_21_225819_add_images_to_articles_table

对应的 database/migrations/ 目录下会自动生成一个文件

赣极购物商城网店建站软件系统
赣极购物商城网店建站软件系统

大小仅1兆左右 ,足够轻便的商城系统; 易部署,上传空间即可用,安全,稳定; 容易操作,登陆后台就可设置装饰网站; 并且使用异步技术处理网站数据,表现更具美感。 前台呈现页面,兼容主流浏览器,DIV+CSS页面设计; 如果您有一定的网页设计基础,还可以进行简易的样式修改,二次开发, 发布新样式,调整网站结构,只需修改css目录中的css.css文件即可。 商城网站完全独立,网站源码随时可供您下载

下载
database/migrations/2018_03_21_225819_add_images_to_articles_table.php

可以看到文件名前面缀上了日期和时间。

public function up()
{
Schema::table('articles', function (Blueprint $table) {
$table->text('images');
});
}

按照官方文档,加上 images 字段,保存修改。执行命令

php artisan migrate

输出

Migrating: 2018_03_21_225819_add_images_to_articles_table
Migrated:  2018_03_21_225819_add_images_to_articles_table

这时查看数据表 migrations 会发现多了一行记录。

74a84595ef154692f45639dcfdf5352.png

然后就是把修改同步到生产环境了。唯一的区别就是,生产环境服务器上会要求确认是否执行该命令。

**************************************
*     Application In Production!     *
**************************************
 Do you really wish to run this command? (yes/no) [no]:
 > yes
Migrating: 2018_03_21_225819_add_images_to_articles_table
Migrated:  2018_03_21_225819_add_images_to_articles_table

修改字段

这不仓促发布造成了 500 错误

SQLSTATE[HY000]: General error: 1364 Field 'images' doesn't have a default value

只需要再新建一个 migration 文件即可,加入

$table->text('images')->nullable()->change();

线上再次执行 migrate 即可解决。

相关推荐:最新的五个Laravel视频教程

相关专题

更多
高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

65

2026.01.16

全民K歌得高分教程大全
全民K歌得高分教程大全

本专题整合了全民K歌得高分技巧汇总,阅读专题下面的文章了解更多详细内容。

121

2026.01.16

C++ 单元测试与代码质量保障
C++ 单元测试与代码质量保障

本专题系统讲解 C++ 在单元测试与代码质量保障方面的实战方法,包括测试驱动开发理念、Google Test/Google Mock 的使用、测试用例设计、边界条件验证、持续集成中的自动化测试流程,以及常见代码质量问题的发现与修复。通过工程化示例,帮助开发者建立 可测试、可维护、高质量的 C++ 项目体系。

33

2026.01.16

java数据库连接教程大全
java数据库连接教程大全

本专题整合了java数据库连接相关教程,阅读专题下面的文章了解更多详细内容。

39

2026.01.15

Java音频处理教程汇总
Java音频处理教程汇总

本专题整合了java音频处理教程大全,阅读专题下面的文章了解更多详细内容。

19

2026.01.15

windows查看wifi密码教程大全
windows查看wifi密码教程大全

本专题整合了windows查看wifi密码教程大全,阅读专题下面的文章了解更多详细内容。

85

2026.01.15

浏览器缓存清理方法汇总
浏览器缓存清理方法汇总

本专题整合了浏览器缓存清理教程汇总,阅读专题下面的文章了解更多详细内容。

19

2026.01.15

ps图片相关教程汇总
ps图片相关教程汇总

本专题整合了ps图片设置相关教程合集,阅读专题下面的文章了解更多详细内容。

11

2026.01.15

ppt一键生成相关合集
ppt一键生成相关合集

本专题整合了ppt一键生成相关教程汇总,阅读专题下面的的文章了解更多详细内容。

47

2026.01.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Laravel---API接口
Laravel---API接口

共7课时 | 0.6万人学习

PHP自制框架
PHP自制框架

共8课时 | 0.6万人学习

PHP面向对象基础课程(更新中)
PHP面向对象基础课程(更新中)

共12课时 | 0.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号