From: Michel M. <mme...@gm...> - 2009-03-17 19:27:58
|
Hi everyone, I am writing a python program using PyADO to add some data to an 'mdb' database. For example, filename = UserObjs.mdb table I am working with = Lines fields I am working with = ID and Metrics The 'ID' field is just a number field. The 'Metrics' filed is an OLE object. In this OLE object assigned in Microsoft Access, I need to include a series of latitude/longitude numbers as in an array. The problem I have is that, let's suppose I want to add this array: [(23.00000,56.5897),(23.4569,58),(244569,60)] When I read the database (SELECT etc..), what I get is something like this: [ *(*2*3*.*0*,...) ] (Note: Here, I used the * to symbolize a 'box' string shown in the python command line.) I'd appreciate any help I could get on this! Thank you so much!!! Regards, Michel PS: Below is the code I am using to insert / read the data: ****To insert: import PyADO import win32com.client import sys id_number = raw_input("ID? ") id_metrics = [(23.00000,56.5897),(23.4569,58),(244569,60)] conn = win32com.client.Dispatch(r'ADODB.Connection') DSN = 'PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=C:\msm_test\OLE_project\UserObjs.mdb;' sql_statement = "INSERT INTO Lines (ID,Metrics) VALUES ('%s','%s');" %(id_number,id_metrics) conn.Open(DSN) conn.Execute(sql_statement) conn.Close() *** To read the data import PyADO conn = PyADO.connect(None,user='admin',password='',host=None,database='C:\\msm_test\OLE_project\UserObjs.mdb',provider='Microsoft.Jet.OLEDB.4.0') curs = conn.cursor() curs.execute("select * from Lines") result = curs.fetchall() descr = curs.description for row in result: for col in row: print col curs.close() conn.close() |