[python-nl] tMS Access en Pyyhon, win32com uitbreiding

Math mathweijzen at home.nl
Tue Feb 7 18:57:04 CET 2006


Hoi,

Ik ben er inmiddels achter hoe een Access DB aan te maken met Python en
Micorsoft COM (win32com package) en AODX (dus niet ADO).....
Ook wat betreft de interface van bepaalde COM objecten.
Hiervoor kun  je de COM-browser in PythonWin gebruiken ... :-)
Zie hier een klein (incompleet) code voorbeeld voor de geinteresseerde:
-------------------------------------------------------------------------------
import win32com.client
from ADOConstants import *
import sys

# Creeer Access db (db.mdb)
cat = win32com.client.Dispatch(r'ADOX.Catalog')

try:
    cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db.mdb")
except:
    print "Fout tijdens aanmaken DB."

# database. connectie
conn = win32com.client.Dispatch(r'ADODB.Connection')
DSN = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=db.mdb;"
conn.Open(DSN)

if conn.State == adStateOpen:
    print "database connectie actief."
else:
    print "Fout tijdens database connectie maken."
    sys.exit(1)

# insert record in tabel Deelnemers
conn.Execute("INSERT INTO Deelnemers VALUES ('Tannie')")

# open recordset
rs = win32com.client.Dispatch(r'ADODB.Recordset')
sqlStatement = r"SELECT * FROM Deelnemers"

rs.Open(sqlStatement, conn, 1, 3)

for rows in range(rs.RecordCount):
    for cols in range(rs.Fields.Count):
        print rs.Fields.Item(0)
        rs.MoveNext()

# aluit recordset
rs.Close()
rs = None

# sluit connectie
if conn.State == adStateOpen:
    conn.Close()
    conn = None
-------------------------------------------------------------------------------

----- Original Message ----- 
From: "Guido Wesdorp" <guido op infrae.com>
To: "Math" <mathweijzen op home.nl>
Cc: <python-nl op python.org>
Sent: Tuesday, February 07, 2006 12:39 PM
Subject: Re: [python-nl] tMS Access en Pyyhon, win32com uitbreiding


> Math wrote:
>>  Kan iemand mij misschien vertellen waar ik meer info vindt betreffende
>> Python en MS Access Databases?
>> Nu zoek ik specifieke info betreffende SQL statements.
>> bv Heeft iemand een voorbeeld van hoe ik een nieuwe Access DB aanmaak
>> vanuit Python m.b.v. SQL, win32com en ADO?
>> Of waar vindt ik meer info over attributen van module 'win32com'?
>> Ik hoop dat mijn vraag enidzins duidelijk is.
>>
> Hallo!
>
> Ik merk dat je geen kleuren meer in je email zet, maar nog wel HTML email
> verstuurd. Ik neem aan dat je niet weet wat het verschil is of zo? In
> ieder geval, in iedere email client moet je in kunnen stellen of je al dan
> niet HTML sources meestuurt met je email, en voor mailinglists kun je
> beter kiezen om dat niet te doen. Een relatief groot aantal mensen leest
> hun mailing lists met niet-HTML readers, en ziet rauwe HTML in zijn mail
> staan als dat niet uitgezet is. Dit resulteert in frustratie van hun kant,
> en zal er op den duur toe leiden dat je minder snel, of helemaal geen
> antwoord meer krijgt op je vragen.
>
> Probeer het alsjeblieft uit te zetten, in Mozilla/Thunderbird kun je het
> zo instellen dat hij bij iedere email vraagt of je al dan niet met HTML
> wilt versturen, zoek het even op alsjeblieft. Geloof dat het in Outlook
> ook kan, weet alleen niet hoe (al zou ik zowiezo aanraden Thunderbird te
> gebruiken, is een stuk veiliger en sneller ;).
>
> Groeten,
>
> Guido
>
> P.S. Zou geen antwoord weten op je vraag, ik weet weinig tot niets van
> win32 af. :| Ik denk overigens dat je met ODBC een eind zou moeten komen,
> en als je dat gebruikt zou de API hetzelfde moeten zijn als bij bijna
> iedere andere database in Python (Python heeft een generieke DB API
> definitie waar de meeste databases gebruik van kunnen maken).



More information about the Python-nl mailing list