ODBC & DbiData problem

W

Wedrowiec

I have a problem for experienced programmers. The following code
should copy data between two different databases:

import dbi,odbc
conn1=odbc.odbc('mysql'); conn2=odbc.odbc('sqlite')
c1 = conn1.cursor(); c2 = conn2.cursor()

c1.execute("SELECT field1, field2 FROM table1")
rows = c1.fetchall()
c2.executemany('INSERT INTO table1 (field1=%s,field2=%s)', rows)

c1.close();c1=None; c2.close();c1=None;
conn1.close();conn1=None; conn2.close();conn2=None

The problem is: field 'field2' is DATE type and after fetchmany()
method I got DbiDate object instead of string 'YYYY-MM-DD
HH:MM:SS'. So my code breaks because Python cannot
insert such object to another database.

I know how to convert this object to the correct string
(http://www.python.org/windows/OdbcHints.html) but it must be done for
every field in every row. :( So my question is: Is it possible to make
odbc module to *automatically convert* this field from DbiDate object
to string? Maybe is there any special parameter to set up? I do not
want to write special code to convert all such fields. It suppose, it
can be done more automatically by odbc module, bu I do not know
how....
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,990
Messages
2,570,211
Members
46,796
Latest member
SteveBreed

Latest Threads

Top