zoukankan      html  css  js  c++  java
  • SQLAlchemy mysql插入特殊字符错误

    SQLAlchemy 插入特殊字符操作

    引号错误

    曾经在使用SQLAlchemy执行sql语句的时候遇到插入字符串时引号的错误
    例如下面的代码sql在拼接后就变成了注释中的字符串,这时候插入mysql当然出错。

    content = 'test"hhhh",'
    sql = 'insert into comment(content) values("%s")'%content
    #insert into comment(content) values("test"hhhh",")
    execute_sql(sql)
    

    image.png

    解决方法:
    1.自己转义为引号加上反斜杠

    content = content.replace('"','\"')
    

    2.第三方依赖包

    import pymysql
    content =pymysql.escape_string(content )  
    

    pymysql.escape_string可转义的字符
    image.png

    冒号错误

    最近遇到个巨坑的问题,以冒号开始的字符串也无法保存,或者以字符串中存在 中文标点符号加冒号的情况也无法保存。(具体原因未找到,似乎是这种操作被当做SQLAlchemy 中的对象处理了)
    image.png

    content = ":test"
    content = ",:test"
    sql = 'insert into comment(content) values("%s")'%content
    execute_sql(sql)
    
  • 相关阅读:
    PyQT_Group
    单例模式演示-1-39-07
    RSqlBuilder
    RExcel
    RJson
    NodeJs开发目录
    NodeJs事件驱动
    NodeJs实用工具util
    NodeJs之global,process
    NodeJs两个简单调试技巧
  • 原文地址:https://www.cnblogs.com/i-love-python/p/11593501.html
Copyright © 2011-2022 走看看