'Confirm support for transactions'

@cached_property
def supports_transactions(self):

    try:
        self.connection.enter_transaction_management()
        cursor = self.connection.cursor()
        cursor.execute('CREATE    TABLE    ROLLBACK_TEST    (X    INT)')
        self.connection.commit()
        cursor.execute('INSERT    INTO    ROLLBACK_TEST    (X)    VALUES    (8)')
        self.connection.rollback()
        cursor.execute('SELECT    COUNT(X)    FROM    ROLLBACK_TEST')
        (count,) = cursor.fetchone()
        cursor.execute('DROP    TABLE    ROLLBACK_TEST')
        self.connection.commit()
    finally:
        self.connection.leave_transaction_management()
    return (count == 0)
