By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
445,885 Members | 1,499 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 445,885 IT Pros & Developers. It's quick & easy.

ODBC & DbiData problem

P: n/a
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....
Jul 18 '05 #1
Share this question for a faster answer!
Share on Google+

This discussion thread is closed

Replies have been disabled for this discussion.