You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为数据库新增表且不丢失原有数据?替代php artisan migrate的命令是什么

Laravel 新增表迁移操作说明

你不需要替换 php artisan migrate 命令,它本身就符合「新增表、保留旧表数据」的需求:
Laravel 会通过数据库内的 migrations 表记录所有已经执行过的迁移脚本,默认仅执行还未运行过的新迁移:

  • 先按照规范创建新表对应的迁移文件,确保迁移文件内的逻辑仅包含创建新表的操作,没有写入修改、删除旧表或旧表数据的代码
  • 执行迁移前可先运行 php artisan migrate --pretend 预览本次要执行的SQL语句,确认所有操作仅涉及新增新表,无误后再执行正式操作
  • 直接运行 php artisan migrate 即可完成新表创建,原有旧表的全部数据会完整保留

注意事项

如果担心误操作改动旧表,可提前做好两项校验:

  • 确认新迁移文件的文件名前缀时间戳晚于所有旧迁移文件的时间戳,Laravel会按时间戳顺序执行迁移,仅会执行时间戳大于migrations表中已记录最大时间戳的迁移文件
  • 如果你只需要执行当前单个新迁移,可以暂时把其他未执行的迁移文件移出database/migrations目录,执行完迁移后再移回即可

内容的提问来源于stack exchange,提问作者imane

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 18:06:08