Hang Park
142e1ead76
Fixed #30242 -- Removed extra space before LIMIT/OFFSET SQL.
2019-03-09 21:32:20 +01:00
Jon Dufresne
76990cbbda
Fixed #30171 -- Fixed DatabaseError in servers tests.
...
Made DatabaseWrapper thread sharing logic reentrant. Used a reference
counting like scheme to allow nested uses.
The error appeared after 8c775391b7
.
2019-02-14 10:04:55 -05:00
Dan Davis
2bd8df243a
Fixed #30184 -- Removed ellipsis characters from shell output strings.
...
Partially reverted 50b8493581
(refs #29654 )
to avoid a crash when the user shell doesn't support non-ASCII characters.
2019-02-13 13:59:44 -05:00
Simon Charette
b8c48d06fa
Refs #26608 -- Added a database feature for fixed frame range distance support.
2019-02-09 08:47:41 -05:00
Aymeric Augustin
3bb6a4390c
Refs #27753 -- Favored force/smart_str() over force/smart_text().
2019-02-06 14:12:06 -05:00
Johannes Hoppe
b131f9c79f
Refs #29444 -- Renamed DatabaseFeatures.can_return_id* to be generic for other columns.
2019-01-30 15:31:56 -05:00
Tim Graham
7e6b214ed3
Fixed #30116 -- Dropped support for Python 3.5.
2019-01-30 10:19:48 -05:00
Dan Tao
738faf9da2
Fixed #30108 -- Allowed adding foreign key constraints in the same statement that adds a field.
2019-01-29 15:42:57 -05:00
Paveł Tyślacki
b69f8eb04c
Fixed #30062 -- Added support for unique conditional constraints.
2019-01-12 09:50:20 -05:00
Paveł Tyślacki
1e837c4b23
Used None as the empty value for condition in Index's SQL construction.
2019-01-12 09:34:10 -05:00
Paveł Tyślacki
647be06538
Renamed variables after generalization of constraints.
...
Follow up to 8eae094638
.
2019-01-10 18:54:41 -05:00
Nick Pope
a35d2a4510
Refs #23748 -- Added AutoField introspection for SQLite.
2019-01-09 09:59:15 -05:00
Mariusz Felisiak
97844a3213
Fixed typo in django/db/backends/base/features.py.
2019-01-03 20:10:33 +01:00
Paveł Tyślacki
0123b67f6b
Fixed #30060 -- Moved SQL generation for indexes and constraints to SchemaEditor.
2019-01-01 09:39:58 -05:00
Tim Graham
b74b6736d0
Refs #29547 -- Skipped an unsupported partial index test on older versions of SQLite.
...
Follow up to e5b8626c0e
.
2018-12-26 11:20:11 -05:00
Nick Pope
83677faf86
Fixed #30056 -- Added SQLite support for StdDev and Variance functions.
2018-12-24 11:14:58 -05:00
Simon Charette
20f6f9eaa1
Renamed SQLite3 references to to SQLite.
...
The version suffix isn't part of the product name.
2018-12-22 14:20:43 -05:00
Mariusz Felisiak
f9a33e3c3f
Fixed #29932 -- Fixed combining compound queries with sub-compound queries on SQLite and Oracle.
2018-12-06 15:31:33 -05:00
Mariusz Felisiak
f091ea3515
Refs #29722 -- Added introspection of materialized views for Oracle.
...
Thanks Tim Graham for the review.
2018-11-26 19:45:05 +01:00
Mariusz Felisiak
d5f4ce9849
Fixed #29949 -- Refactored db introspection identifier converters.
...
Removed DatabaseIntrospection.table_name_converter()/column_name_converter()
and use instead DatabaseIntrospection.identifier_converter().
Removed DatabaseFeatures.uppercases_column_names.
Thanks Tim Graham for the initial patch and review and Simon Charette
for the review.
2018-11-21 09:06:50 +01:00
Tim Graham
acdd18dffc
Changed BaseDatabaseSchemaEditor._effective_default() to staticmethod.
...
Follow up to 9cac10eee4
.
2018-11-20 18:01:18 -05:00
Tim Graham
9cac10eee4
Added BaseDatabaseSchemaEditor._effective_default() to allow testing without a connection.
2018-11-17 19:27:53 -05:00
Tim Graham
e62f6e0968
Fixed #29505 -- Removed SchemaEditor's calling of callable defaults.
...
Thanks Eugene Pakhomov for the suggested fix.
2018-11-17 19:27:53 -05:00
Simon Charette
dba4a634ba
Refs #29641 -- Refactored database schema constraint creation.
...
Added a test for constraint names in the database.
Updated SQLite introspection to use sqlparse to allow reading the
constraint name for table check and unique constraints.
Co-authored-by: Ian Foote <python@ian.feete.org>
2018-11-13 15:25:44 -05:00
Tim Graham
f82be9ebc7
Fixed #29934 -- Added sqlparse as a require dependency.
2018-11-09 19:09:36 -05:00
Mads Jensen
a906c98982
Fixed #29547 -- Added support for partial indexes.
...
Thanks to Ian Foote, Mariusz Felisiak, Simon Charettes, and
Markus Holtermann for comments and feedback.
2018-10-29 19:34:54 -04:00
Tim Graham
717ee63e56
Refs #27025 -- Removed obsolete sqlite3 transaction management workaround for Python 3.6+.
...
Obsolete per https://bugs.python.org/issue10740#msg274816 .
2018-10-25 19:54:48 -04:00
Tim Graham
9b52bd6575
Made DatabaseFeatures.uses_savepoints default to True.
2018-10-25 10:02:47 -04:00
Mariusz Felisiak
328f5627dd
Fixed #29870 -- Added DurationField introspection for Oracle and PostgreSQL.
...
Thanks Tim Graham for the review.
2018-10-21 09:08:05 +02:00
Jon Dufresne
0bf7b25f8f
Added django.db.backends.utils.names_digest() to remove redundant code.
2018-10-02 10:41:43 -04:00
Claude Paroz
fc3a463048
Fixed #29767 -- Made date-related casts work on SQLite
...
Thanks Rémy Hubscher for the report and Tim Graham and Simon Charette for the reviews.
2018-10-01 13:27:30 +02:00
Jon Dufresne
82f286cf6f
Refs #29784 -- Switched to https:// links where available.
2018-09-26 08:48:47 +02:00
Oleg
d1d5c97bc2
Fixed #29778 -- Fixed quoting of unique index names.
...
Regression in 3b429c9673
.
2018-09-25 16:00:20 -04:00
Jon Dufresne
abeed587b1
Refs #27795 -- Removed force_bytes() usage in db/backends/base/schema.py.
2018-09-25 09:54:06 -04:00
Tom Forbes
9cbdb44014
Fixed #23646 -- Added QuerySet.bulk_update() to efficiently update many models.
2018-09-18 16:14:44 -04:00
Jon Dufresne
5311a36da5
Refs #29654 -- Replaced three dots with ellipsis in DB creation output strings.
2018-08-28 07:56:34 -04:00
Claude Paroz
50b8493581
Refs #29654 -- Replaced three dots with ellipsis character in output strings.
2018-08-22 09:13:58 -04:00
Tom
f1fbef6cd1
Fixed #28668 -- Allowed QuerySet.bulk_create() to ignore insert conflicts.
2018-08-03 17:40:46 -04:00
Tom Forbes
4198445afc
Refs #29548 -- Fixed failing window tests on MariaDB 10.3.
2018-07-30 19:54:56 -04:00
Claude Paroz
65503ca097
Fixed #29040 -- Made test database creation messages use a consistent output stream.
2018-07-19 18:05:33 -04:00
Oliver Sauder
a07a49ee32
Fixed #29559 -- Fixed TransactionTestCase.reset_sequences for auto-created m2m through models.
2018-07-11 17:20:29 -04:00
Ian Foote
952f05a6db
Fixed #11964 -- Added support for database check constraints.
2018-07-10 15:32:33 -04:00
Ian Foote
38cada7c94
Fixed #28077 -- Added support for PostgreSQL opclasses in Index.
...
Thanks Vinay Karanam for the initial patch.
2018-06-29 17:00:28 -04:00
Mariusz Felisiak
6dd4edb1b4
Fixed #29496 -- Fixed crash on Oracle when converting a non-unique field to primary key.
...
Thanks Tim Graham for the review.
2018-06-17 08:51:02 +02:00
Tom
c1c163b427
Fixed #28574 -- Added QuerySet.explain().
2018-04-19 10:52:19 -04:00
Jeremy Bowman
ee17bb8a67
Fixed #29193 -- Prevented unnecessary foreign key drops when altering a unique field.
...
Stopped dropping and recreating foreign key constraints on other fields
in the same table as the one which is actually being altered in an
AlterField operation.
Regression in c3e0adcad8
.
2018-04-11 23:17:11 -04:00
Mariusz Felisiak
6141c752fe
Fixed #29251 -- Added bytes to str conversion in LPad/RPad database functions on MySQL.
...
Thanks Tim Graham for the review.
2018-04-03 18:24:04 +02:00
Tim Graham
6421bd702f
Refs #29227 -- Made inspectdb generate BooleanField(null=True) rather than NullBooleanField.
2018-03-20 12:10:10 -04:00
Tim Graham
f8b98f0edc
Removed DatabaseFeatures.can_introspect_null.
...
The only known usage is in the unmaintained django-pymssql project.
2018-03-16 11:43:41 -04:00
Tomer Chachamu
c12745f682
Fixed typo in django/db/backends/base/schema.py.
2018-03-12 13:49:36 -04:00
Дилян Палаузов
45aaf6608d
Removed unused variable in BaseDatabaseSchemaEditor.effective_default().
2018-03-12 12:06:06 -04:00
Mariusz Felisiak
074a2f7f58
Refs #28909 -- Simplifed code using unpacking generalizations.
2018-02-26 18:23:31 +01:00
Matthew Wilkes
2162f0983d
Fixed #24747 -- Allowed transforms in QuerySet.order_by() and distinct(*fields).
2018-02-10 19:08:55 -05:00
Mariusz Felisiak
34b52f8572
Renamed the allow_sliced_subqueries database feature to allow_sliced_subqueries_with_in.
...
After 0899d583bd
this database feature is
false only on MySQL which doesn't support sliced subqueries only with
IN/ALL/ANY/SOME.
2018-02-07 08:27:47 +01:00
Tim Martin
02365d3f38
Fixed #28542 -- Fixed deletion of primary key constraint if the new field is unique.
2018-01-13 20:11:55 -05:00
Дилян Палаузов
a38ae914d8
Fixed #28996 -- Simplified some boolean constructs and removed trivial continue statements.
2018-01-12 12:44:50 -05:00
Sergey Fedoseev
ae1baa7d1d
Refs #28459 -- Improved performance of loading DurationField on SQLite and MySQL.
2017-12-27 12:23:08 -05:00
Nick Pope
f3a98224e6
Refs #28909 -- Simplifed code using unpacking generalizations.
2017-12-21 21:05:23 -05:00
Mariusz Felisiak
fc48047586
Refs #28876 -- Fixed incorrect foreign key constraint name for models with quoted db_table.
...
Thanks Simon Charette and Tim Graham for the review and Carlos E. C.
Leite for the report.
2017-12-05 21:11:20 +01:00
Simon Charette
095c1aaa89
Fixed #28849 -- Fixed referenced table and column rename on SQLite.
...
Thanks Ramiro for the input and Tim for the review.
2017-12-01 22:12:24 -05:00
Tim Graham
c3e0adcad8
Fixed #28305 -- Fixed "Cannot change column 'x': used in a foreign key constraint" crash on MySQL with a sequence of AlterField or RenameField operations.
...
Regression in 45ded053b1
.
2017-12-01 19:07:46 -05:00
Jon Dufresne
7a6fbf36b1
Fixed #28853 -- Updated connection.cursor() uses to use a context manager.
2017-11-28 11:28:09 -05:00
Simon Charette
ee85ef8315
Fixed #28792 -- Fixed index name truncation of namespaced tables.
...
Refs #27458 , #27843 .
Thanks Tim and Mariusz for the review.
2017-11-14 21:36:25 -05:00
Дилян Палаузов
c69e4bc691
Fixed #28769 -- Replaced 'x if x else y' with 'x or y'.
2017-11-07 09:08:46 -05:00
Nick
3d22121a0b
Clarified error message for when sqlplarse isn't installed.
2017-11-03 10:09:46 -04:00
Simon Charette
9d93dff333
Fixed #28665 -- Change some database exceptions to NotImplementedError per PEP 249.
2017-10-06 12:47:08 -04:00
Mariusz Felisiak
03da070f5c
Refs #28670 -- Moved LIMIT/OFFSET SQL to DatabaseOperations.limit_offset_sql().
...
Thanks Tim Graham for the review.
2017-10-04 20:24:38 +02:00
Mads Jensen
6d1df84c00
Corrected typos in BaseDatabaseOperations exception messages.
2017-09-30 19:18:51 -04:00
Mads Jensen
8d40eb0e89
Used NotSupportedError for some unsupported database opreations per PEP 249.
2017-09-29 09:49:55 -04:00
Tim Graham
a80903b711
Removed DatabaseFeatures.supports_microsecond_precision.
...
MySQL 5.5 (refs #28552 ) was the last database to use it.
2017-09-25 14:48:15 -04:00
Tim Graham
578711c310
Refs #27098 -- Removed DatabaseIntrospection.get_indexes() per deprecation timeline.
2017-09-22 12:51:18 -04:00
Shai Berger
d612026c37
Refs #28595 -- Added a hook to add execute wrappers for database queries.
...
Thanks Adam Johnson, Carl Meyer, Anssi Kääriäinen, Mariusz Felisiak,
Michael Manfre, and Tim Graham for discussion and review.
2017-09-21 12:13:09 -04:00
Mads Jensen
d549b88050
Fixed #26608 -- Added support for window expressions (OVER clause).
...
Thanks Josh Smeaton, Mariusz Felisiak, Sergey Fedoseev, Simon Charettes,
Adam Chainz/Johnson and Tim Graham for comments and reviews and Jamie
Cockburn for initial patch.
2017-09-18 09:42:29 -04:00
Mads Jensen
3939e2b4dc
Changed default value of DatabaseFeatures.has_bulk_insert to True.
2017-09-18 08:12:35 -04:00
Mariusz Felisiak
c6a1faecc3
Refs #27090 -- Added real database sequence introspection.
...
Thanks Mariusz Felisiak for the Oracle part and Tim Graham for the
review.
2017-09-13 20:12:32 +02:00
Jon Dufresne
99e65d6488
Fixed #28578 -- Renamed DatabaseCreation number arguments to suffix.
2017-09-11 11:32:40 -04:00
Tom
b78d100fa6
Fixed #27849 -- Added filtering support to aggregates.
2017-08-12 17:58:28 -04:00
Mariusz Felisiak
489421b015
Fixed #23546 -- Added kwargs support for CursorWrapper.callproc() on Oracle.
...
Thanks Shai Berger, Tim Graham and Aymeric Augustin for reviews and
Renbi Yu for the initial patch.
2017-08-12 21:06:49 +02:00
Mariusz Felisiak
3189a93ceb
Refs #23766 -- Added tests for CursorWrapper.callproc().
...
Thanks Tim Graham for the review.
2017-08-08 22:13:02 +02:00
Claude Paroz
831358f23d
Fixed #28465 -- Unified index SQL creation in DatabaseSchemaEditor
...
Thanks Tim Graham for the review.
2017-08-08 17:37:43 +02:00
Mariusz Felisiak
b61d5b1991
Fixed #28371 -- Fixed Cast() with CharField if the max_length argument isn't provided.
...
Thanks Tim Graham for the review.
2017-07-27 19:36:47 +02:00
Mariusz Felisiak
8e41373c81
Allowed database backends to specify data types for Cast().
...
A small refactor ahead of refs #28371 .
2017-07-26 20:26:58 -04:00
Mariusz Felisiak
fe9f383357
Refs #24996 -- Removed unused BaseDatabaseFeatures.supports_select_related.
...
Unused since 0c7633178f
.
2017-07-24 13:46:02 -04:00
Tim Graham
487362fa8f
Fixed #28370 -- Deprecated the context arg of Field.from_db_value() and Expression.convert_value().
...
Unused since a0d166306f
.
2017-07-20 16:30:08 -04:00
Mariusz Felisiak
776cee9749
Fixed #28391 -- Fixed Cast() with CharField and max_length on MySQL.
...
Thanks Tim Graham for the review.
2017-07-17 21:12:27 +02:00
Claude Paroz
169c3b3e07
Fixed #14204 -- Enforced SQLite foreign key constraints.
...
Thanks Tim Graham for contributing to the patch and
Simon Charette for advice and review.
2017-07-11 09:07:31 -04:00
Ran Benita
b9f7dce84b
Fixed #28010 -- Added FOR UPDATE OF support to QuerySet.select_for_update().
2017-06-29 16:00:15 -04:00
Mariusz Felisiak
3297dede7f
Fixed #28046 -- Added the db_tablespace parameter to class-based indexes.
...
Thanks Markus Holtermann and Tim Graham for reviews.
2017-06-27 21:15:15 +02:00
Josh Schneier
fba0eaa5d6
Fixed #28298 -- Prevented a primary key alteration from adding a foreign key constraint if db_constraint=False.
2017-06-22 21:31:56 -04:00
Simon Charette
b1cbbe9267
Refs #25530 -- Deleted deferred SQL references on delete operation.
2017-06-21 00:26:30 -04:00
Simon Charette
b50815ee41
Refs #25530 -- Renamed deferred SQL references on rename operation.
2017-06-21 00:26:30 -04:00
Simon Charette
3b429c9673
Refs #25530 -- Tracked references of deferred SQL statements.
2017-06-21 00:03:31 -04:00
Simon Charette
ea91ad4c13
Refs #25530 -- Changed _create_index_name to take a table as first parameter.
2017-06-20 22:59:22 -04:00
Florian Apolloner
823d73be3e
Fixed #28275 -- Added more hooks to SchemaEditor._alter_field().
2017-06-06 11:08:40 -04:00
Jon Dufresne
2c69824e5a
Refs #23968 -- Removed unnecessary lists, generators, and tuple calls.
2017-06-01 19:08:59 -04:00
Mariusz Felisiak
924a89e135
Fixed #26682 -- Added support for Oracle identity columns.
...
Thanks Shai Berger and Tim Graham for reviews.
2017-06-01 19:33:48 +02:00
Mariusz Felisiak
538bf43458
Fixed #27859 -- Ignored db_index for TextField/BinaryField on Oracle and MySQL.
...
Thanks Zubair Alam for the initial patch and Tim Graham for the review.
2017-05-23 17:02:40 +02:00
Mariusz Felisiak
b3eb6eaf1a
Refs #27859 -- Added DatabaseWrapper.display_name.
...
Thanks Tim Graham for the review.
2017-05-23 09:09:35 -04:00
Mariusz Felisiak
5cff2cb4c0
Refs #27859 -- Refactored BaseDatabaseValidation to use check_field_type().
...
Thanks Tim Graham for the review.
2017-05-14 18:34:45 +02:00
Florian Apolloner
837259a63f
Pass type to sql_alter_column_* where it was missing.
...
This is a followup to 2b3a941457
2017-05-09 12:47:35 +02:00