用postgres更新laravel5.3中区分大小写的db字段

dgsult0t  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(321)

我正在尝试用laravel中的原始sql更新数据库列字段。值得一提的是,更新代码是写在mysql驱动器上的,但现在我使用postgres。列名为 dayID . 所以更新代码是:

DB::update("update table set travel = ... WHERE dayID = {$this->dayID}");

我必须使用原始sql,因为我对多边形类型进行了一些更新。
问题是laravel会自动转换 dayIDdayid 所以我得到一个错误:

column "dayid" does not exist

我试图设置一个变量以便在更新查询中使用它,但也失败了,出现了相同的错误:

$var = "dayID";
DB::update("update table set travel = ... WHERE ".$var." = {$this->dayID}");

我该怎么修?

ulmd4ohb

ulmd4ohb1#

请尝试db::table,更新如下:

DB::table('table_name')
        ->where('dayID', $this->dayID)
        ->update(['travel' => '...']);

laravel文件:
https://laravel.com/docs/5.3/queries#updates

相关问题