axn/laravel-pk-int-to-bigint

在 Laravel 项目中将数据库主键和相关外键类型从 INT 转换为 BIGINT

2.2.1 2023-07-03 09:21 UTC

This package is auto-updated.

Last update: 2024-09-03 11:55:14 UTC


README

本包将 Laravel 项目的数据库主键和相关外键类型从 INT 转换为 BIGINT。

这对于需要更新的旧项目特别有用。

实际上,自从 Laravel 5.8 开始,ID 列默认为 BIGINT 类型。如果您安装了使用这种新“标准”的包,您将无法创建外键。

因此,此包将帮助您将旧应用现代化。

它分为 4 个步骤

  1. 数据库自省和验证外键的完整性(如果完整性不被遵守,则停止并通知您)
  2. 在每个表上删除所有外键约束
  3. 在每个表的主键和外键列上将从 INT 转换为 BIGINT
  4. 在每个表上恢复所有外键约束

安装

使用 Composer 安装包

composer require axn/laravel-pk-int-to-bigint

用法

首先创建数据库备份,以防出现问题。

手动

如果您想直接运行命令

php artisan pk-int-to-bigint:transform

使用迁移

发布迁移

php artisan vendor:publish --tag="pk-int-to-bigint-migration"

这样您就可以使用以下命令将其集成到您的部署流程中:

php artisan migrate