diff options
author | Sergey Fedoseev <fedoseev.sergey@gmail.com> | 2017-12-29 03:35:41 +0500 |
---|---|---|
committer | Tim Graham <timograham@gmail.com> | 2017-12-28 17:35:41 -0500 |
commit | ae6fa914aa2f43d39ae491ac7d3140dda69702fa (patch) | |
tree | 8ecea479750200eed8f047381a167097404db8f9 /django/db/backends/mysql/operations.py | |
parent | 46d1af2e82c2b2a6976397719afde33b5cff2498 (diff) | |
download | django-ae6fa914aa2f43d39ae491ac7d3140dda69702fa.tar.gz |
Fixed #28926 -- Fixed loss of precision of big DurationField values on SQLite and MySQL.
Diffstat (limited to 'django/db/backends/mysql/operations.py')
-rw-r--r-- | django/db/backends/mysql/operations.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/django/db/backends/mysql/operations.py b/django/db/backends/mysql/operations.py index 7c901d78d8..ad4c13652e 100644 --- a/django/db/backends/mysql/operations.py +++ b/django/db/backends/mysql/operations.py @@ -3,6 +3,7 @@ import uuid from django.conf import settings from django.db.backends.base.operations import BaseDatabaseOperations from django.utils import timezone +from django.utils.duration import duration_microseconds from django.utils.encoding import force_text @@ -105,7 +106,7 @@ class DatabaseOperations(BaseDatabaseOperations): return "TIME(%s)" % (field_name) def date_interval_sql(self, timedelta): - return "INTERVAL '%06f' SECOND_MICROSECOND" % timedelta.total_seconds() + return 'INTERVAL %s MICROSECOND' % duration_microseconds(timedelta) def format_for_duration_arithmetic(self, sql): return 'INTERVAL %s MICROSECOND' % sql |