2016-11-26 7 views
0

Я пытаюсь обновить строки в столбце в MS Access с помощью Python. Строка Я хочу обновить это путь к файлу Windows, который содержит специальные символы и пробелы, как:Оператор обновления MSAccess с строкой, содержащей специальные символы и пробелы

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] Syntax error (missing operator) in query expression '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; 

Как обновить строку, подобную этой в доступе?

ответ

0

Вы должны использовать параметризованный запрос , например.

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)