I just came across the exact same problem using the mssql connection (mssqlconnection.py).  More specifically the problem occured when I tried to access the first returned row of a selectResults (ie. selResults[0]).  I tried the same solution below in the mssqlconnection.py file, and it solved the problem.
Can this fix also be applied to the official mssql support?

On Sun, Dec 20, 2009 at 10:41 AM, Oleg Broytman <phd@phd.pp.ru> wrote:

On Fri, Dec 18, 2009 at 01:19:25AM +0100, Petr Jake?? wrote:
>   File
> "/usr/lib/python2.5/site-packages/SQLObject-0.10.1-py2.5.egg/sqlobject/firebird/firebirdconnection.py",
> line 120, in _queryAddLimitOffset
>     match = cls.limit_re.match(query)
> AttributeError: class FirebirdConnection has no attribute 'limit_re'

  This is the patch that I think fixes the problem:

Index: firebirdconnection.py
--- firebirdconnection.py       (revision 4047)
+++ firebirdconnection.py       (working copy)
@@ -10,6 +10,8 @@
    dbName = 'firebird'
    schemes = [dbName]

+    limit_re = re.compile('^\s*(select )(.*)', re.IGNORECASE)
    def __init__(self, host, db, user='sysdba',
                 password='masterkey', autoCommit=1,
                 dialect=None, role=None, charset=None, **kw):
@@ -18,8 +20,6 @@
            import kinterbasdb
        self.module = kinterbasdb

-        self.limit_re = re.compile('^\s*(select )(.*)', re.IGNORECASE)
        self.host = host
        self.db = db
        self.user = user

    Oleg Broytman            http://phd.pp.ru/            phd@phd.pp.ru
          Programmers don't die, they just GOSUB without RETURN.

This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
sqlobject-discuss mailing list