use*_*345 1 python windows ms-access pyodbc
问题是我无法创建一个名为Date(我想是因为它是类型)的字段。有什么主意该怎么做?
from pyodbc import connect
# database connect
conn = connect('DRIVER={Microsoft Access Driver (*.mdb)};DBQ=test.mdb')
cursor = conn.cursor()
# sql query execute
query = "create table MyTable(name varchar(30), age integer , Date date)"
cursor.execute(query)
# commit changes
conn.commit()
conn.close()
Run Code Online (Sandbox Code Playgroud)
错误:
Traceback (most recent call last):
File "\Path\to\myscript\test.py", line 9, in <module>
cursor.execute(query)
ProgrammingError: ('42000', '[42000] [Microsoft][ODBC Microsoft Access Driver] Syntax error in field definition. (-3553) (SQLExecDirectW)')
Run Code Online (Sandbox Code Playgroud)
环境:Windows 7 64bit,Python 2.7 pyodbc-3.0.6.win-amd64-py2.7
DATE是Access(和其他软件)中的保留字。
尝试Date用方括号将列名称包装起来[],或者更好的是,使用其他列名称。
...
query = "create table MyTable(name varchar(30), age integer , [Date] date)"
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
629 次 |
| 最近记录: |