Thanks Benji, I took your advice and added in the conn.commit() into the script but still had the same problem. I did some digging around the odbc documentation and found this bug: ************************************************************************************************************** 4. Hirendra Hindocha also reports: inserting a single row into a table doesn't work properly unless one specifically deallocates the cursor. for example the following code snippet - conn = odbc.odbc(str) cur = conn.cursor() sql = 'insert into abc_table values(1,2,'abc') cur.execute(sql) conn.commit() cur.close() conn.close()doesn't work, unless you add the following lines
cur = None conn = None at the end of the above code snippet. Tracing with ODBC and a look into odbc.cpp shows that sqlfreestmt is not being called until the explicit deallocation is done. [Note however, Bill Tutt seems to think that this problem implies a problem with the specific ODBC driver, rather than with the ODBC implementation of Python. I haven't a clue!] ***************************************************************************************************************** I figured what the heck and added in the 2 lines specified: cur = None conn = None and sure enough it worked after that! I am not sure why but figure that when the last loop goes through it is as if it is updating 1 single row????? Either way it works now. Thanks for the help as I am sure I needed the conn.commit() as well. Chris "Benji York" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > Chris wrote: >> what ever is the last loop through doesn't seem to update the >> database? > > Try a conn.commit() after your loop. > -- > Benji York -- http://mail.python.org/mailman/listinfo/python-list