数据库同步迁移

所谓迁移就像是数据库的版本控制,这种机制允许团队简单轻松的编辑并共享应用的数据库表结构。迁移通常和 Laravel 的 schema 构建器结对从而可以很容易地构建应用的数据库表结构。如果你曾经频繁告知团队成员需要手动添加列到本地数据库表结构以维护本地开发环境,那么这正是数据库迁移所致力于解决的问题。

创建一个迁移文件:php artisan make:migration create_user_table.php

使用命令:php artisan migtate进行数据库迁移

这个错误的解决方案:

然后在执行就ok了

打开数据库:我们可以看到表结构已经创建好了

这是第一步统一数据库结构,但是在我们正常的项目开发时项目结构会经常变更的,这个时候我们不可能直接在线上直接更改,但是我们还需要保持数据库统一,我们就可以使用laravel的数据迁移来进行操作

在修改列之前,确保已经将 doctrine/dbal 依赖添加到 composer.json 文件,Doctrine DBAL 库用于判断列的当前状态并创建对列进行指定调整所需的 SQL 语句:

使用命令进行添加依赖: composer require doctrine/dbal

比如我们对这个users数据库要进行添加一个字段myIsAdd这个字段

我们需要先创建一个迁移文件并且将需要添加的字段放进去

然后使用php artisan migrate命令执行

数据库,已经添加成功

这里对列的操作方法我简单列出来,只要知道是这样对表结构进行修改的,其他的都可以看文档解决(比如添加的列的索引,类型)

这是重命名字段

Schema::table('users', function (Blueprint $table) {

$table->renameColumn('from', 'to');

});

这是删除字段

Schema::table('users', function (Blueprint $table) {

$table->dropColumn('votes');

});

有特别其他需求的可以自己查文档解决,这里就不一一列出来了

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190530A0FKBB00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券