Hyouka' s Blog Hyouka' s Blog
首页 个人介绍 留言墙 文章归档 标签云 友情链接
首页 个人介绍 留言墙 文章归档 标签云 友情链接
_Hyouka
_Hyouka
CV工程师
Github
_Hyouka
_Hyouka
CV工程师
Github

分类

  • 默认分类 1
  • 教程分享 2
  • 开发编程 2

最新文章

  • [开发编程]Laravel框架 数据库迁移文件案例
    2023-10-10
  • [开发编程]Laravel框架 常用的数据库迁移命令
    2023-10-10
  • [教程分享]Faker仓库互助教程
    2021-12-13
  • [教程分享]安装并配置青龙面板
    2021-12-13
  • 欢迎使用 Typecho
    2020-09-23

[开发编程]Laravel框架 常用的数据库迁移命令

Hyouka 2023年10月10日 开发编程 0 条评论

Laravel框架 常用的数据库迁移命令

① 基础操作流程

  1. 执行创建迁移文件命令,根据不同操作执行不同命令。位于 database/migrations 目录下
  2. 修改迁移文件代码,实现想要的操作。
  3. 运行迁移命令,来运行所有未执行过的迁移文件。

② 创建迁移文件命令

  1. 创建数据表:

     php artisan make:migration create_table_name --create=table_name

    用于创建名为 table_name 的数据表。

  2. 添加数据表字段:

     php artisan make:migration add_column_name_to_table_name --table=table_name

    用于向名为 table_name 的数据表中添加 column_name 字段。
    打开生成的迁移文件,并使用 ->addColumn('column_name', 'data_type') 方法来添加字段。

  3. 修改数据表字段:

    在修饰字段之前,请确保你已经通过 Composer 包管理器安装了 doctrine/dbal 包。Doctrine DBAL 库用于确定字段的当前状态, 并创建对该字段进行指定调整所需的 SQL 查询
     php artisan make:migration alter_table_name_table  --table=table_name

    用于修改名为 table_name 的数据表
    除了"alter"外还有一种模式"modify"也可以修改,具体区别请自行查找SQL中"alter"和"modify"区别

     php artisan make:migration modify_table_name_table  --table=table_name

    打开生成的迁移文件,并使用 ->change() 方法来修改字段。例如,如果要修改字段的数据类型,可以使用 ->string('column_name') 方法。

  4. 删除数据表字段

     php artisan make:migration remove_column_name_from_table_name_table --table=table_name

    用于从名为 table_name 的数据表中删除 column_name 字段。

③ 运行迁移命令

  1. 运行迁移:

    php artisan migrate

    这将运行所有尚未运行的迁移文件,根据迁移文件类型执行对应操作

  2. 撤销迁移:

    php artisan migrate:rollback

    这将撤销最近一次运行的迁移文件,删除相应的数据表。

  3. 撤销所有迁移:

    php artisan migrate:reset

    这将撤销所有已运行的迁移文件,删除所有数据表。

  4. 重新运行迁移:

    php artisan migrate:refresh

    这将撤销所有已运行的迁移文件,然后重新运行所有迁移文件,重新创建所有数据表。

  5. 查看迁移状态:

    php artisan migrate:status

    这将显示每个迁移文件的运行状态,以及是否已运行。

④ 特别备注

理论上,一个迁移文件就可以把创建数据表/新增、修改、删除数据表字段功能都是实现。区分多个文件主要是为了之后方便维护罢了。

上一篇
[教程分享]Faker仓库互助教程
下一篇
[开发编程]Laravel框架 数据库迁移文件案例

评论已关闭

© 2026 Hyouka' s Blog. 由 Typecho 强力驱动. BlogTrain主题.
RSS