mysql - 来自另一个字段的 Codeigniter 查询更新集
问题描述
这是我的代码
$data = [
'take' => 100,
'available' => 'plan - ' . 100
];
$this->db->where('id', 1);
$this->db->update('tb_planner', $data);
我得到的查询
UPDATE tb_planner SET take = '100', available = 'plan - 100' WHERE id = '1'
这是一个错误,因为 'available' 设置不是 int。
解决方案
您需要第三个FALSE
参数来禁用查询生成器生成的引号转义,并手动将反引号括在表字段名称中:
$this->db->set('take', 100);
$this->db->set('available', '`plan`- 100', FALSE);
$this->db->where('id', 1);
$this->db->update('tb_planner');
推荐阅读
- oracle - 更新索引列 Oracle
- webpack - 如何防止库被 UglifyJs 或 Terser Webpack 插件破坏?
- gcloud - 如何使用 gcloud 命令行启用单词置信度
- r - 如何使用 Data.table 处理 date.time
- ffmpeg - 创建仅音频再现 - 8KHz 16-bit little endian uncompressed.wav
- android-studio - “Tab”按钮删除代码而不是向前推送代码
- android - 获取 JSON 左侧值
- laravel - laravel 单选按钮的问题
- c# - 有没有办法遍历 c# wpf 中的元素并将它们连接到 MySQL 数据库?
- webrtc - 是否可以访问 webRTC 中的原始音频数据?