将数据从 Access 数据库导出到 Python 代码
Exporting data from Access database to Python code
我一直在论坛上深入研究,但找不到从 Access 数据库中提取数据的方法。我有两种方法,第一个和第二个选项,我希望它是可以理解的但是如果不清楚,请问我,我是字面意思堆...我的代码是:
# first option
DRIVER_NAME = "Microsoft Access Driver (*.mdb, *.accdb)"
# Path.
DB_PATH = getcwd() + "/Regitros_Export_History.accdb"
# Connection.
conn = pyodbc.connect("Driver={%s};DBQ=%s;" % (DRIVER_NAME, DB_PATH))
# second option
conn = pyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *
.accdb)};DBQ=C:\Users\enriq\Dropbox\Proyectos\Escission\Amura\Subvenciones\Puertos
4.0\Desarrollo de proyecto\Documentación\Archivos compartidos por Coqui 20210818\PROYECTO
MODELOS ML - JIT\Regitros_Export_History.accdb;')
# Create a cursor to make the queries
cursor=conn.cursor()
cursor.execute('SELECT * FROM 2021-08-15')
rows = q.fetchall()
# Recorrer cada una de las filas e imprimirlas en pantalla.
if rows is not None:
for row in rows:
print(row)
else:
print("No hay datos en la tabla.")
# Cerrar la conexión y, opcionalmente, el cursor antes de finalizar.
cursor.close()
conn.close()
我在行中遇到错误:
ProgrammingError Traceback (most recent call last)
<ipython-input-53-56f8241c5894> in <module>
9 # Crear cursor para ejecutar consultas.
10 cursor=conn.cursor()
---> 11 cursor.execute('SELECT * FROM 2021-08-15')
12
13 rows = q.fetchall()
ProgrammingError: ('42000', '[42000] [Microsoft][Controlador ODBC Microsoft Access] Error de
sintaxis en la cláusula FROM. (-3506) (SQLExecDirectW)')
任何方法都有效,我不知道还能尝试什么。数据库中的table叫2021-08-15,应该是查询吧?
先谢谢你,
干杯。
恩里克。
如果名称包含特殊字符(如数字、减号等),您需要将 table 名称括起来
cursor.execute('SELECT * FROM [2021-08-15]')
我一直在论坛上深入研究,但找不到从 Access 数据库中提取数据的方法。我有两种方法,第一个和第二个选项,我希望它是可以理解的但是如果不清楚,请问我,我是字面意思堆...我的代码是:
# first option
DRIVER_NAME = "Microsoft Access Driver (*.mdb, *.accdb)"
# Path.
DB_PATH = getcwd() + "/Regitros_Export_History.accdb"
# Connection.
conn = pyodbc.connect("Driver={%s};DBQ=%s;" % (DRIVER_NAME, DB_PATH))
# second option
conn = pyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *
.accdb)};DBQ=C:\Users\enriq\Dropbox\Proyectos\Escission\Amura\Subvenciones\Puertos
4.0\Desarrollo de proyecto\Documentación\Archivos compartidos por Coqui 20210818\PROYECTO
MODELOS ML - JIT\Regitros_Export_History.accdb;')
# Create a cursor to make the queries
cursor=conn.cursor()
cursor.execute('SELECT * FROM 2021-08-15')
rows = q.fetchall()
# Recorrer cada una de las filas e imprimirlas en pantalla.
if rows is not None:
for row in rows:
print(row)
else:
print("No hay datos en la tabla.")
# Cerrar la conexión y, opcionalmente, el cursor antes de finalizar.
cursor.close()
conn.close()
我在行中遇到错误:
ProgrammingError Traceback (most recent call last)
<ipython-input-53-56f8241c5894> in <module>
9 # Crear cursor para ejecutar consultas.
10 cursor=conn.cursor()
---> 11 cursor.execute('SELECT * FROM 2021-08-15')
12
13 rows = q.fetchall()
ProgrammingError: ('42000', '[42000] [Microsoft][Controlador ODBC Microsoft Access] Error de
sintaxis en la cláusula FROM. (-3506) (SQLExecDirectW)')
任何方法都有效,我不知道还能尝试什么。数据库中的table叫2021-08-15,应该是查询吧?
先谢谢你,
干杯。
恩里克。
如果名称包含特殊字符(如数字、减号等),您需要将 table 名称括起来
cursor.execute('SELECT * FROM [2021-08-15]')