[egenix-users] insert fails with no error

M.-A. Lemburg mal at egenix.com
Thu Jul 17 23:50:34 CEST 2008

On 2008-07-17 21:49, Joel Bard wrote:
> Hi-
> I'm connecting from linux x86_64 to a sqlserver2005 instance using mxODBC 3.0.1 with unixODBC.  I'm able to retrieve data with no problem.  When I try a simple insert:
>         c=db.cursor()
>         p1="test"
>         p2="mxodbc test"
>         c.execute("insert into bug" + \
>                   " (UIElement,Description)" + \
>                   "values (?,?)" \
>                   ,(p1,p2) \
>                   )
> c.rowcount is 1 but the row is not present in the table.  If I execute the same sql command using isql it works.  The table uses an autoincrement key column and values for the key are consumed even though the record is not being created.  c.messages is empty.  The same behavior is seen regardless of whether parameters are used and regardless of wether I use execute or executedirect.  Any help would be appreciated.

Jim already pointed you to the solution.

I just want to add for reference that isql defaults to working in auto-
commit mode, so all changes you make via isql will immediately be written
to the database.

mxODBC, on the other hand, defaults to transactional mode, so changes
will only be visible if you explicitly commit them to the database.

Marc-Andre Lemburg

Professional Python Services directly from the Source  (#1, Jul 17 2008)
 >>> Python/Zope Consulting and Support ...        http://www.egenix.com/
 >>> mxODBC.Zope.Database.Adapter ...             http://zope.egenix.com/
 >>> mxODBC, mxDateTime, mxTextTools ...        http://python.egenix.com/

:::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! ::::

    eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
     D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
            Registered at Amtsgericht Duesseldorf: HRB 46611

More information about the egenix-users mailing list