Not being an expert on ODBC, I'm at a loss dealing with this bug. Using ZODBC 3.1.0b2 (MSSQL 6.5, NT 4.0 SP4), multiple queries -- especially combining calls to select-type SQL methods with inserts/delete-type methods -- eventually prompt the following error: ('24000', 0, '[Microsoft][ODBC SQL Server Driver]Invalid cursor state') Example traceback: File c:\zope\lib\python\ZPublisher\Publish.py, line 214, in publish_module File c:\zope\lib\python\ZPublisher\Publish.py, line 179, in publish File c:\zope\lib\python\Zope\__init__.py, line 201, in zpublisher_exception_hook (Object: ElementWithAttributes) File c:\zope\lib\python\ZPublisher\Publish.py, line 165, in publish [...] File c:\zope\lib\python\Shared\DC\ZRDB\DA.py, line 401, in __call__ (Object: DeleteFilters) File c:\zope\lib\python\Products\ZODBCDA\db.py, line 199, in query sql.error: (see above) I can easily reproduce this error, but only in my real-world apps. It occurs *very easily*. The only workaround that I know is to combine the operations into to fewer SQL methods -- design hell. -- Alexander Staubo http://www.mop.no/~alex/ The difference between theory and practice is that, in theory, there is no difference between theory and practice.