我有這段代碼試圖用=更新date列。是一個整數,因為它應該是,因為我已經嘗試過 a和 a 。IDmmdatestringdatetime.date
sql = '''UPDATE DaByDay
SET Date = ?
WHERE ID = ?'''
crsr.execute(sql, date, m)
cnxn.commit()
然而我不斷得到
Traceback(最近一次呼叫):
檔案“C:\Users\USERNAME\Desktop\database test.py”,第 47 行,在
crsr.execute(sql, date, m)
pyodbc.ProgrammingError: ('42000', '[ 42000] [Microsoft][ODBC Microsoft Access Driver] UPDATE 陳述句中的語法錯誤。(-3503) (SQLExecDirectW)')
現在我應該如何解決這個問題?
uj5u.com熱心網友回復:
應避免使用保留字作為名稱。日期是 Access 中的保留字。將欄位名稱括在括號中[Date]。
此外,如果名稱使用空格或特殊字符也括在括號中。
可能與問題無關,但可以使用引號而不是三撇號。
uj5u.com熱心網友回復:
考慮到日期文字的正確語法是 'YYYY-MM-DD'(引號內)或 #mm/dd/yyyy#(哈希標記內),您應該嘗試以這種方式提供。此外,日期是 Access 中的保留字,您應該在它周圍使用方括號。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/460168.html
