【问题标题】:MSAccess update statement with string containing special characters and spaces带有包含特殊字符和空格的字符串的 MSAccess 更新语句
【发布时间】:2016-11-26 12:01:58
【问题描述】:

我正在尝试使用 Python 更新 MS Access 中的列中的行。我要更新的字符串是一个 Windows 文件路径,其中包含特殊字符和空格,例如:

C:\Users\Manish\Desktop\Personal\greencindiaphotos25-10-2016\8.2.Patna_west_00001-14335_W\PA11379.jpg

但是,当我运行 sql 查询进行更新时,它会抛出此错误:

pypyodbc.ProgrammingError: (u'42000', u"[42000] [Microsoft][ODBC Microsoft Access Driver] 查询表达式'C:\Users\Manish\Desktop\Personal\greencindiaphotos25-中的语法错误(缺少运算符) 10-2016\8.2.Patna_west_00001-14335_W\PA11379.jpg'.")

这是一个简单的更新查询,例如:

UPDATE Vaishali SET Images={file_path} WHERE ID=112312;

如何在access中更新这样的字符串?

【问题讨论】:

    标签: python sql ms-access pypyodbc


    【解决方案1】:

    您应该使用参数化查询,例如

    file_path = r"C:\Users\Manish\Desktop\Personal\greencindiaphotos25-10-2016\8.2.Patna_west_00001-14335_W\PA11379.jpg"
    id = 112312
    sql = "UPDATE Vaishali SET Images=? WHERE ID=?"
    params = (file_path, id)
    crsr.execute(sql, params)
    

    【讨论】:

      猜你喜欢
      • 2020-07-12
      • 2020-12-25
      • 1970-01-01
      • 2020-01-15
      • 1970-01-01
      • 2017-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多