diff options
| author | Ian Kelly <ian.g.kelly@gmail.com> | 2009-03-10 18:37:22 +0000 |
|---|---|---|
| committer | Ian Kelly <ian.g.kelly@gmail.com> | 2009-03-10 18:37:22 +0000 |
| commit | a4f1e48ddbc464ed0ccb9c305db721845db91d6b (patch) | |
| tree | 465244885bf8d16cf84a60c3cc4bacc37063e585 | |
| parent | 6aa5aacc86a918abd00b2110cc58565193306dd8 (diff) | |
Added savepoint support to the Oracle backend, necessary per the thread at http://groups.google.com/group/django-developers/browse_thread/thread/c87cf2d97478c068/
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10022 bcc190cf-cafb-0310-a4f2-bffc1f526a37
| -rw-r--r-- | django/db/backends/oracle/base.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/django/db/backends/oracle/base.py b/django/db/backends/oracle/base.py index 732f3ebba4..baa8486c50 100644 --- a/django/db/backends/oracle/base.py +++ b/django/db/backends/oracle/base.py @@ -36,6 +36,7 @@ class DatabaseFeatures(BaseDatabaseFeatures): needs_datetime_string_cast = False uses_custom_query_class = True interprets_empty_strings_as_nulls = True + uses_savepoints = True class DatabaseOperations(BaseDatabaseOperations): @@ -151,6 +152,12 @@ WHEN (new.%(col_name)s IS NULL) connection.cursor() return connection.ops.regex_lookup(lookup_type) + def savepoint_create_sql(self, sid): + return "SAVEPOINT " + self.quote_name(sid) + + def savepoint_rollback_sql(self, sid): + return "ROLLBACK TO SAVEPOINT " + self.quote_name(sid) + def sql_flush(self, style, tables, sequences): # Return a list of 'TRUNCATE x;', 'TRUNCATE y;', # 'TRUNCATE z;'... style SQL statements @@ -309,6 +316,10 @@ class DatabaseWrapper(BaseDatabaseWrapper): cursor = FormatStylePlaceholderCursor(self.connection) return cursor + # Oracle doesn't support savepoint commits. Ignore them. + def _savepoint_commit(self, sid): + pass + class OracleParam(object): """ |
