summaryrefslogtreecommitdiff
path: root/django/db/backends/oracle/schema.py
diff options
context:
space:
mode:
authormdalp <mdalp@users.noreply.github.com>2021-12-12 02:31:04 +0100
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2021-12-14 09:08:25 +0100
commit3b73f77ad40a06230a47771df02429f1ba45a2f4 (patch)
tree12442a9a664360b7665b91d9381672d4aef896e3 /django/db/backends/oracle/schema.py
parent2f33217ea2cad688040dd6044cdda946c62e5b65 (diff)
downloaddjango-3b73f77ad40a06230a47771df02429f1ba45a2f4.tar.gz
Fixed #33358 -- Fixed handling timedelta < 1 day in schema operations on Oracle.
Diffstat (limited to 'django/db/backends/oracle/schema.py')
-rw-r--r--django/db/backends/oracle/schema.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/django/db/backends/oracle/schema.py b/django/db/backends/oracle/schema.py
index 47d60ea290..70698b15e7 100644
--- a/django/db/backends/oracle/schema.py
+++ b/django/db/backends/oracle/schema.py
@@ -6,6 +6,7 @@ from django.db import DatabaseError
from django.db.backends.base.schema import (
BaseDatabaseSchemaEditor, _related_non_m2m_objects,
)
+from django.utils.duration import duration_iso_string
class DatabaseSchemaEditor(BaseDatabaseSchemaEditor):
@@ -27,6 +28,8 @@ class DatabaseSchemaEditor(BaseDatabaseSchemaEditor):
def quote_value(self, value):
if isinstance(value, (datetime.date, datetime.time, datetime.datetime)):
return "'%s'" % value
+ elif isinstance(value, datetime.timedelta):
+ return "'%s'" % duration_iso_string(value)
elif isinstance(value, str):
return "'%s'" % value.replace("\'", "\'\'").replace('%', '%%')
elif isinstance(value, (bytes, bytearray, memoryview)):