[egenix-users] mx.ODBC error: Invalid Descriptor Index
Alexandre Fayolle
alexandre.fayolle at logilab.fr
Thu Apr 15 18:14:02 CEST 2010
On Tuesday 13 April 2010 12:03:27 M.-A. Lemburg wrote:
> Hello Alexandre,
Hello Marc Andre,
Thanks for your detailed answer. I was not aware of the SELECT list limitation
on parameters. I shall investigate if we can twist the ORM around this to use
the more efficient method (as what I'm after is speed).
> >
> > mx.ODBC.Error.DataError: ('22008', 0, '[Microsoft][SQL Server Native
> > Client 10.0]Datetime field overflow. Fractional second precision exceeds
> > the scale specified in the parameter binding.', 7748)
> >
> > At this point, I'm a bit stuck and would appreciate any help
>
> How are you passing those date/time values to mxODBC ? As
> mxDateTime instances, strings or datetime module instances ?
>
> An ODBC trace log would help find out what the ODBC driver
> is asking for.
Here's some additional information on this specific bug (the %(name)s quoting
in the SQL is processed to use the ? style quoting):
sql: 'UPDATE cw_CWUser SET cw_modification_date = %(cw_modification_date)s,
cw_last_login_time = %(cw_last_login_time)s WHERE cw_eid = %(cw_eid)s'
args: {'cw_eid': 5, 'cw_modification_date': datetime.datetime(2010, 4, 15, 16,
51, 25, 468000), 'cw_last_login_time': datetime.datetime(2010, 4, 15, 16, 51,
25, 453000)}
Basically, the datetime values are obtained using datetime.datetime.now(). The
column in the database use MS SQL datetime type.
As for the ODBC trace log, I could not generate it. I have installed mxODBC
and mxBase using MSI installers: do these include the debug support mentioned
in the documentation, or do I have to use the ZIP prebuilt packages?
Regards,
--
Alexandre Fayolle LOGILAB, Paris (France)
Formations Python, CubicWeb, Debian : http://www.logilab.fr/formations
Développement logiciel sur mesure : http://www.logilab.fr/services
Informatique scientifique: http://www.logilab.fr/science
More information about the egenix-users
mailing list