小编Jon*_*han的帖子

JSON_SET 不更新 MySQL 中的空 JSON 字段

我有一个可为空的 JSON MySQL 5.7 字段,我发现它几乎无法工作。

示例查询:

UPDATE `json_test` SET `data` = JSON_SET(`data`, '$.a', 1)

如果字段数据已经为 NULL,则不会更新。

如果它是 { "a" : 2 },那么它将正确更新为 1。如果尚未设置,我需要设置它,这是 JSON_SET 应该做的。

任何想法发生了什么?

mysql json

2
推荐指数
3
解决办法
3989
查看次数

数据库事务不回滚 [Laravel 7.3]

我正在一个应用程序上运行 Laravel 7.3,我觉得这可能是一个 Laravel 框架错误,因为我正在为此绞尽脑汁......

我有一个数据库事务,其中保存了模型,所有这些都在 try/catch 中,但它仍然保存模型更新,我只是不明白为什么,因为它命中了catch()并且响应 json 命中了,所以我假设回滚正在运行,但数据库仍在更新。

try {
    DB::beginTransaction();

    foreach ($models as $model) {
        $model->rungroup_id = $rungroup->id;
        $model->zone_id = $rungroup->getFirstZoneID();
        $model->delivery_status = 'next';
        $model->save();
    }

    DB::commit();

    return response()->json(['status' => 'success']);
} catch (Throwable | Exception $e) {
    DB::rollBack();

    Log::error($e);

    return response()->json([
        'status' => 'error',
        'message' => $e->getMessage(),
    ], 500);
}
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

laravel eloquent

0
推荐指数
1
解决办法
720
查看次数

标签 统计

eloquent ×1

json ×1

laravel ×1

mysql ×1