[PyGr] Python + MS Access (*.mdb)
Panagiotis Mavrogiorgos
pmav99 at gmail.com
Thu Jul 21 03:00:12 CEST 2011
Σας ευχαριστώ πολύ όλους σας.
Τελικά βρήκα άκρη με το pyodbc.
Εν ολίγοις πρέπει να ξέρεις το ακριβές όνομα του driver του ODBC, το οποίο
το βρίσκεις τρέχοντας το αρχείο odbcad32.exe το οποίο είναι το πρόγραμμα που
τρέχει μέσα από Control Panel/Administrative Tools/Data Sources (ODBC).
Μέσω του pyodbc το όνομα του driver είναι αποθηκευμένο μέσα σε ένα dict
import pyodbc
for item in pyodbc.dataSources().iteritems():
print item
Στον υπολογιστή μου (windows 7) το όνομα του Driver είναι :
Microsoft Access Driver (*.mdb, *.accdb)
Σε παλαιότερες εκδόσεις των win πρέπει να είναι κάτι τέτοιο:
Microsoft Access Driver (*.mdb)
Ακολουθεί ένα Minimum Working Example ως reference αν το χρειαστεί κανείς
import pyodbc
import os
import os.path
def get_driver(key="MS Access Database"):
drivers = pyodbc.dataSources()
#for item in drivers.iteritems():
#print item
return drivers[key]
cwd = os.path.abspath(os.path.curdir)
DBdriver = get_driver()
DBfile = os.path.join(cwd, "test.mdb")
conn = pyodbc.connect('DRIVER={Microsoft Access Driver (*.mdb,
*.accdb)};DBQ='+DBfile)
cursor = conn.cursor()
SQL = 'SELECT * FROM Table1;'
for row in cursor.execute(SQL):
print row
cursor.close()
conn.close()
@ Χρήστος Γεωργίου
Η λύση που προτείνεις με το DAO πετάει λάθη. Έχω 64bit Windows και 64bit
Python αν παίζει ρόλο. Σε ευχαριστώ πάντως όπως και αν έχει.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-greece/attachments/20110721/eddf4c75/attachment.html>
More information about the Python-greece
mailing list