gpt4 book ai didi

sql - Laravel更新数据库记录运行脚本

转载 作者:行者123 更新时间:2023-12-05 00:15:17 24 4
gpt4 key购买 nike

我想使用工匠更新运行SQL脚本的数据库中的所有记录。例如,我需要执行以下命令:

UPDATE translations SET field = 'meta_desc' WHERE field = 'page_desc'

Laravel的结构将是最佳解决方案?种子,移民,工厂?

最佳答案

感谢大家的答复。特别感谢@RossWilson提出的使用迁移来更改数据库数据的想法。

但是我认为,这不是一个好的解决方案,因为Laravel的概念涉及使用迁移来更改数据库结构。

阅读Laravel的手册后,我发现有一种特殊的代码结构可用于处理db的数据。这是一个Seed。因此,我使用上面的示例查询的下一个种子解决了我的问题:

  • 使用artisan命令创建了新种子:
    php artisan make:seed UpdateTranslationsSeeder
  • 在run()方法内编写代码:
    DB::table('translations')->where('field', 'page_desc')->update(['field' => 'meta_desc']);
  • 在工匠手中运行我的播种机:
    php artisan db:seed --class=UpdateTranslationsSeeder

  • 注意:如果在控制台中运行了最后一条命令后,我对类UpdateTranslationsSeeder的错误未定义,请在控制台中运行下一条命令,以告知Laravel有关新类的信息:
    composer dump-autoload -o

    关于sql - Laravel更新数据库记录运行脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44819438/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com