php - Eloquent ORM 插入或更新

标签 php mysql eloquent

我正在使用 Laravel 框架的数据库组件开发一个项目。该库包括一个名为“Capsule”的数据库抽象层 (DBAL) 和一个名为“Eloquent”的对象关系映射 (ORM) 库。

我想更新数据库中已有的扩展名,但如果它们不存在,我还想插入一个新的“扩展名”。最好的方法是什么?

到目前为止我的代码:

try {
    $updatedDomainsCount = Capsule::table('tbldomainpricing')
        ->where('extension', $tld)
        ->update(
            [
                'extension' => $tld,
                'autoreg' => 'domenytv',
                'grace_period' => '15',

                 'idprotection' => $idp,
                  'grace_period_fee' => $rea_price,
            ]
        );

    echo "Updated {$updatedDomainsCount} TLD: $tld</br>";
} catch (\Exception $e) {
    echo "I couldn't update domains tld. {$e->getMessage()}";
}   

最佳答案

使用 Eloquent ORM 方法:updateOrCreate,用于创建新记录或更新现有记录。

Eloquent documentation

关于php - Eloquent ORM 插入或更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52996181/

相关文章:

php - 使用子流程传递时不接受两个输入

php MySQL 应该可以工作

php mysql UNION ALL - 从单独的表中获取 id

sql - Laravel Eloquent : sum with groupBy

拉拉维尔 4 : ErrorException Undefined variable

php - PHP 中的回发

php - 从数据库表中填充选择下拉列表

mysql - 如何在mysql中执行String然后插入临时表?

mysql - 没有order by子句时先返回哪个字段?

laravel - 将模型与 Table Laravel 5.2 连接