今天用sqlalchemy修改数据库中的一些数据
UPDATE 表 SET 字段="", 字段2="" WHERE id =筛选条件
由于历史遗留问题, 我有一个字段是json,dumps
转义出来的, 导致了一些文字他长这个样子
\u6bcf\u65e5\u575a
如果直接存的话
UPDATE 表 SET 字段=`\u6bcf\u65e5\u575a`, 字段2="" WHERE id =筛选条件
表中他就回变成u6bcfu65e5u575a
, 我原计划是使用format 但是还是不太乐观
翻了些许博客之后有大佬指出, 使用格式化输出即可, 我就更改了下我的代码
UPDATE 表 SET 字段=`%s, 字段2=%d WHERE id =筛选条件,(`\u6bcf\u65e5\u575a`, 123)
重点来了, 我是万万没想到这个sql竟然不支持 %d
(有可能是我没会写,如果有大佬知道咋接,请教一下)
不管是数字也好, 字符串也好 统统用%s
即可
---by 2022/02/19
sqlalchemy 不区分大小写查询
方法是在 db.String 中添加 collation=‘NOCASE’ 描述,即修改为以下模型即可