最近维护代码发现存在部分数据存储失败的情况,项目是通过拼装sql语句,利用MySQLdb execute来进行数据的插入。增加日志后发现存在插入失败的情况多为value中存在单引号时,到时候整个sql语法存在问题,需要对单引号进行一下转义。
MySQLdb提供了转义工具,MySQLdb.escape_string()来对字符串进行处理,然后就可以避免问题
本文探讨了在使用MySQLdb执行SQL插入操作时遇到的数据存储失败问题,特别是当value字段包含单引号时。通过增加日志记录,发现这会导致SQL语法错误。文章介绍了如何使用MySQLdb提供的escape_string()方法对字符串进行转义,从而有效避免此类问题。
最近维护代码发现存在部分数据存储失败的情况,项目是通过拼装sql语句,利用MySQLdb execute来进行数据的插入。增加日志后发现存在插入失败的情况多为value中存在单引号时,到时候整个sql语法存在问题,需要对单引号进行一下转义。
MySQLdb提供了转义工具,MySQLdb.escape_string()来对字符串进行处理,然后就可以避免问题
2508

被折叠的 条评论
为什么被折叠?