Commit Graph

1590 Commits

Author SHA1 Message Date
Zackary Troop 30f8642f2e Fixed #29350 -- Fix get_primary_key_column() method in sqlite3 backend
Thanks Tim Graham and Mariusz Felisiak for the reviews.
2018-04-28 12:01:45 +02:00
priyanshsaxena 6b3d292043 Fixed #29015 -- Added an exception if the PostgreSQL database name is too long. 2018-04-27 21:37:42 -04:00
Tom c1c163b427 Fixed #28574 -- Added QuerySet.explain(). 2018-04-19 10:52:19 -04:00
Brett Cannon 64b74804c5 Fixed #29334 -- Updated pypi.python.org URLs to pypi.org. 2018-04-17 20:24:27 -04:00
Mariusz Felisiak e0a3cfaca0 Simplified Oracle's DatabaseOperations.cache_key_culling_sql() with LIMIT/OFFSET. 2018-04-17 12:50:43 -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 816b386d41
Refs #24791 -- Made PostgreSQL's nodb connection use first PostgresSQL db when 'postgres' db isn't available.
Thanks Tim Graham and Claude Paroz for reviews.
2018-04-03 22:21:47 +02:00
Mariusz Felisiak 55cc26941a
Refs #28643 -- Added Repeat database function.
Thanks Tim Graham and Nick Pope for reviews.
2018-04-03 19:36:12 +02: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 5fa4f40f45 Fixed #29227 -- Allowed BooleanField to be null=True.
Thanks Lynn Cyrin for contributing to the patch, and Nick Pope for review.
2018-03-20 12:10:10 -04:00
Mariusz Felisiak cede5111bb
Refs #28643 -- Added LPad and RPad database functions.
Thanks Tim Graham for the review.
2018-03-19 17:35:16 +01:00
Claude Paroz 3c4ff21763 Fixed #29103 -- Removed bad 'b'-prefix added by MySQL's SchemaEditor.quote_value(). 2018-03-17 16:36:54 -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
Mariusz Felisiak 362813d628
Fixed hanging indentation in various code. 2018-03-16 10:54:34 +01:00
Mariusz Felisiak acfc650f2a
Fixed #29199 -- Fixed crash when database user password contains @ sign on Oracle.
Thanks Shane Allgeier for the report and Tim Graham for the review.
2018-03-13 19:06:40 +01:00
Sergey Fedoseev d696fccae6 Fixed #29209 -- Fixed Cast() with TextField on MySQL and Oracle. 2018-03-12 21:57:14 -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
Sergey Fedoseev ba4a986240 Refs #28459 -- Improved performance of time difference expressions on MySQL. 2018-03-01 14:42:21 +05: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
Mariusz Felisiak f73f821143 Removed uneeded comment in DatabaseWrapper.check_constraints() on SQLite/MySQL backends. 2018-01-31 20:02:45 -05:00
bquinn c2b969e124 Fixed #29004 -- Added inspectdb --include-views option. 2018-01-27 18:51:40 -05:00
Sigurd Ljødal a455e732a0 Fixed #28650 -- Added TruncWeek database function. 2018-01-27 09:59:13 -05: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
Tim Graham d60e8b856b Added DatabaseFeatures.is_postgresql_9_5 to avoid repetition. 2018-01-09 14:09:02 -05:00
Mariusz Felisiak 8f8a93a9ae
Fixed #28859 -- Made Oracle backend raise DatabaseError if "no data found" exception is hidden by the Oracle OCI library.
Thanks Tim Graham for the review and Jani Tiainen for the report.
2018-01-06 18:50:54 +01:00
Sergey Fedoseev 2115be616b Refs #28459 -- Improved performance of duration expressions on SQLite. 2018-01-04 17:16:17 -05:00
Дилян Палаузов d7b2aa24f7 Fixed #28982 -- Simplified code with and/or. 2018-01-03 20:12:23 -05:00
Mariusz Felisiak 51a00749e9
Used Decimal.scaleb() in backends.utils.format_number() and DecimalField.widget_attrs() to improve performance. 2017-12-30 18:05:15 +01:00
Sergey Fedoseev 98e78ac754 Bumped minimum supported mysqlclient version to 1.3.7.
Follow up to ad9390bba2.
2017-12-29 11:55:29 -05:00
Sergey Fedoseev 51ae4e1f32 Refs #28459 -- Used default date converter on SQLite for better performance.
See https://docs.python.org/3/library/sqlite3.html#default-adapters-and-converters.
2017-12-29 14:37:00 +05:00
Sergey Fedoseev ae6fa914aa Fixed #28926 -- Fixed loss of precision of big DurationField values on SQLite and MySQL. 2017-12-28 17:35:41 -05:00
Sergey Fedoseev 44908d4d93 Fixed #28967 -- Prevented Cast to FloatField from rounding to integer on MySQL. 2017-12-27 19:16:37 -05:00
Sergey Fedoseev ae1baa7d1d Refs #28459 -- Improved performance of loading DurationField on SQLite and MySQL. 2017-12-27 12:23:08 -05:00
Sergey Fedoseev d0f569b350 Refs #28459 -- Improved performance of loading DecimalField on SQLite. 2017-12-26 18:12:37 -05:00
Simon Charette 9f7772e098 Fixed #28884 -- Fixed crash on SQLite when renaming a field in a model referenced by a ManyToManyField.
Introspected database constraints instead of relying on _meta.related_objects
to determine whether or not a table or a column is referenced on rename
operations.

This has the side effect of ignoring both db_constraint=False and virtual
fields such as GenericRelation which aren't backend by database level
constraints and thus shouldn't prevent the rename operations from being
performed in a transaction.

Regression in 095c1aaa89.

Thanks Tim for the additional tests and edits, and Mariusz for the review.
2017-12-22 15:19:05 -05:00
Nick Pope f3a98224e6 Refs #28909 -- Simplifed code using unpacking generalizations. 2017-12-21 21:05:23 -05:00
Sergey Fedoseev ebc4ee3369 Refs #23941 -- Prevented incorrect rounding of DecimalField annotations on SQLite. 2017-12-21 19:50:56 -05:00
Sergey Fedoseev c8a85e3e91 Fixed #28932 -- Prevented Oracle from truncating trailing zeros in the fractional part of DecimalField.
Fixes the test added in 6fd6d8383f.
Regression in 7c1f3901bc.
2017-12-20 11:55:51 -05:00
Mariusz Felisiak fc9eec7bb7 Fixed #28934 -- Prevented Cast from truncating microseconds on Oracle. 2017-12-20 11:05:27 -05:00
Mariusz Felisiak 4420761ea9
Fixed #28727 -- Fixed Cast crash on SQLite when casting a Python date/datetime to Date/DateTimeField. 2017-12-19 19:54:58 +01:00
Sergey Fedoseev 9c9ef58352
Removed unused DatabaseOperations.date_interval_sql() on Oracle.
Unused since 5ca82e710e.
2017-12-16 23:59:36 +05:00
Sergey Fedoseev 6fd6d8383f Fixed #28915 -- Prevented SQLite from truncating trailing zeros in the fractional part of DecimalField.
This reverts commit a146b65628 and adds
a test for the regression.
2017-12-12 21:57:41 -10:00
Sergey Fedoseev f9a0766f1c Simplified SQLite converter for bool type. 2017-12-12 22:40:15 -05:00
Nick Pope d13a9e44de Fixed #28909 -- Simplified code using tuple/list/set/dict unpacking. 2017-12-11 07:08:45 -05:00
Sergey Fedoseev c5a2f48bed Improved performance of loading DateTimeField on Oracle and MySQL. 2017-12-08 09:53:27 -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
Дилян Палаузов d2afa5eb23 Fixed #28860 -- Removed unnecessary len() calls. 2017-12-04 10:35:23 -05: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
Mads Jensen f0a68c2511 Fixed #28702 -- Made query lookups for CIText fields use citext. 2017-11-29 10:35:37 -05:00
Jon Dufresne 7a6fbf36b1 Fixed #28853 -- Updated connection.cursor() uses to use a context manager. 2017-11-28 11:28:09 -05:00
Дилян Палаузов 3308085838 Fixed #28854 -- Replaced type(True) with bool in sqlite's SchemaEditor. 2017-11-28 10:44:02 -05:00
Mariusz Felisiak ad5f33ee03
Refs #27954 -- Fixed typo in django/db/backends/postgresql/client.py comment. 2017-11-26 16:27:37 +01:00
Sergey Fedoseev 93cdd07e8f Used bytes.hex() and bytes.fromhex() to simplify. 2017-11-23 08:52:23 -05:00
Tim Graham e3c852cbd6
Fixed #28804 -- Fixed "Unknown system variable 'transaction_isolation'" on MariaDB.
Regression in 967450a3bf.
2017-11-20 10:08:34 -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
Sergey Fedoseev 967450a3bf Fixed #28794 -- Fixed tx_isolation deprecation warning on MySQL 5.7.20+. 2017-11-14 15:40:44 -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
Mariusz Felisiak 0899d583bd Fixed #28670 -- Added FETCH/OFFSET support on Oracle.
Thanks Tim Graham for the review.
2017-10-09 18:07:03 +02: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 1b823b8f18 Fixed #28596 -- Fixed QuerySet.bulk_create() and cascade deletion crash on Oracle when using more than 65535 parameters.
Thanks Tim Graham for the review.
2017-10-05 18:52:37 +02: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
Tim Graham d0c761d3f8 Refs #28584 -- Removed unused DatabaseFeatures.can_share_in_memory_db. 2017-10-03 20:17:12 -04:00
Tim Graham 27193aea00 Fixed #28584 -- Dropped support for SQLite < 3.7.15. 2017-10-03 10:42:18 -04:00
Mads Jensen 6d1df84c00 Corrected typos in BaseDatabaseOperations exception messages. 2017-09-30 19:18:51 -04:00
Tim Graham dd82f33271 Fixed #27979 -- Made MySQL raise IntegrityError rather than OperationalError when saving negative numbers in PositiveInteger fields. 2017-09-29 15:20:32 -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 1d8cfa3608 Fixed #28626 -- Dropped support for PostgreSQL 9.3.
Thanks Simon Charette for the introspection changes.
2017-09-27 11:00:04 -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 8a1768432b Fixed #28552 -- Dropped support for MySQL 5.5. 2017-09-25 14:48:11 -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
Tim Graham 6e4c6281db Reverted "Fixed #27818 -- Replaced try/except/pass with contextlib.suppress()."
This reverts commit 550cb3a365
because try/except performs better.
2017-09-07 08:16:21 -04:00
Sergey Fedoseev 8b2515a450 Removed unneeded __init__() methods. 2017-09-07 08:10:49 -04:00
Sergey Fedoseev 34f27f910b Replaced @cached_property with class attributes where possible. 2017-09-06 10:13:43 -04:00
Sergey Fedoseev 690fc30d44 Removed DatabaseWrapper.psycopg2_version.
Unused since 3adc5f1ee6.
2017-09-06 09:51:56 -04:00
Mads Jensen 15f2d87ceb Removed unneeded __init__() in PostgreSQL DatabaseWrapper. 2017-09-05 16:22:36 -04:00
Mariusz Felisiak 179b247e07 Removed useless condition from Oracle's NullBooleanField's check constraint.
NULL cannot be compare with standard operators on Oracle, it works only
with IS NULL and IS NOT NULL operators. Therefore 'OR ... IS NULL'
condition in NullBooleanField's check constraint is redundant.
Nullability is checked in a separate constraint.
2017-09-05 11:17:06 +02:00
Kevin Grinberg c6a3546093 Fixed #28451 -- Restored pre-Django 1.11 Oracle sequence/trigger naming.
Regression in 69b7d4b116.
2017-08-22 15:51:08 -04:00
Mariusz Felisiak c47747d45a Removed postgresql_psycopg2.version
Uneeded since 29ea9714ee.
2017-08-21 09:13:07 +02:00
Mariusz Felisiak 6784383e93 Fixed #28498 -- Fixed test database creation with cx_Oracle 6. 2017-08-16 18:39:58 +02: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
Sergey Fedoseev f3e350d631 Replaced typecast_decimal() with decimal.Decimal(). 2017-08-11 09:22:40 -04:00
Sergey Fedoseev a146b65628 Refs #28459 -- Improved performance of loading DecimalField on SQLite. 2017-08-10 15:32:28 -04:00
Sergey Fedoseev 22ff86ec52 Refs #28459 -- Made Oracle get_db_converters() return converter for empty strings only when it's needed. 2017-08-10 10:33:05 -04:00
Sergey Fedoseev 5244d7cf54 Simplified SQLite converter for bool type. 2017-08-09 18:10:34 -04:00
Sergey Fedoseev bb91c0a4dc Refs #4518 -- Removed handling of empty strings in typecast_decimal().
It's unclear if the original change was needed, but it seems unneeded now.
Reverted 6fc10f50b0.
2017-08-09 18:02:16 -04: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
Srinivas Reddy Thatiparthy 6a793d1788 Removed unnecessary assignment in Oracle's FormatStylePlaceholderCursor._fix_for_params().
Obsolete since fae56427e1.
2017-08-07 10:11:54 -04:00
Mariusz Felisiak 5d9034bc92 Removed unused DatabaseOperations.last_insert_id() on PostgreSQL.
Unused since 9eb2afddfa.
2017-08-01 16:53:17 -04: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 28a02259cb Fixed DatabaseFeatures.has_case_insensitive_like on MySQL and Oracle.
Incorrect since its introduction in 20bab2cf9d.
2017-07-24 21:51:29 +02: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 e06cab2600 Fixed #28411 -- Used cx_Oracle.Cursor.outputtypehandler instead of _rowfactory() on Oracle.
Thanks Tim Graham for the review.
2017-07-19 08:42:52 +02: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
Tim Graham feeafdad02 Removed unused enter/exit methods of MySQL's CursorWrapper.
Unused since their introduction in e1d839237f.
2017-07-17 13:16:29 -04:00
Sergey Fedoseev fc2dee6908 Removed unused branch in __getattr__() of Oracle and MySQL cursor wrappers. 2017-07-14 09:14:21 -04:00
Sergey Fedoseev 18db55bb31 Replaced Oracle CursorIterator with generator expression. 2017-07-14 14:15:00 +05: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
Mariusz Felisiak cf57ecb221 Fixed #28364 -- Removed redundant table joins in Oracle's DatabaseIntrospection.get_relations(). 2017-07-06 07:39:01 -04:00
Mariusz Felisiak df1106a40f Fixed #28365 -- Unified DatabaseOperations.date_interval_sql() return value with similar methods. 2017-07-06 07:37:47 -04:00
Mariusz Felisiak 7d8fc65f36
Removed obsolete comment about IntegerField introspection on Oracle.
Obsolete since e9d12bae1e.
2017-07-04 14:46:40 +02:00
Ran Benita b9f7dce84b Fixed #28010 -- Added FOR UPDATE OF support to QuerySet.select_for_update(). 2017-06-29 16:00:15 -04:00
Mads Jensen 550cb3a365 Fixed #27818 -- Replaced try/except/pass with contextlib.suppress(). 2017-06-28 14:07:55 -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
Mads Jensen de42adf4ff Fixed #27869 -- Added fastupdate and gin_pending_list_limit params to GinIndex.
Thanks Tim Graham and Markus Holtermann for review.
2017-06-20 10:54:39 -04:00
Paul Tiplady 335a8d7895 Fixed #28322 -- Added dbshell support for MySQL client TLS certs. 2017-06-19 18:11:25 -04:00
chillaranand 08bda82c23 Fixed #27830 -- Used distutils.version.LooseVersion for version parsing. 2017-06-13 10:53:39 -04:00
Mads Jensen c7f6ffbdcf Fixed #28103 -- Added quarter extract, truncation, and lookup.
Thanks Mariusz Felisiak, Tim Graham, and Adam Johnson for review.
2017-06-08 15:15:29 -04:00
Florian Apolloner 823d73be3e Fixed #28275 -- Added more hooks to SchemaEditor._alter_field(). 2017-06-06 11:08:40 -04:00
Mariusz Felisiak 5e9f7f1e1c Refs #20483 -- Removed unneeded column from _foreign_key_constraints() on Oracle. 2017-06-06 14:25:53 +02:00
Mariusz Felisiak 516b7664dc Fixed #28260 -- Allowed customizing the test tablespace initial and autoextend size on Oracle.
Thanks Tim Graham for the review.
2017-06-02 18:35:56 +02:00
Mariusz Felisiak 8149bd00d8 Fixed #28258 -- Optimized Oracle introspection by using LISTAGG.
Thanks Tim Graham and Jani Tiainen for reviews.
2017-06-02 16:54:34 +02:00
Jon Dufresne 2c69824e5a Refs #23968 -- Removed unnecessary lists, generators, and tuple calls. 2017-06-01 19:08:59 -04:00
Mariusz Felisiak 9af6c97504 Refs #26682 -- Added AutoField introspection on Oracle. 2017-06-01 19:33:48 +02: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
Jon Dufresne 21046e7773 Fixed #28249 -- Removed unnecessary dict.keys() calls.
iter(dict) is equivalent to iter(dict.keys()).
2017-05-27 19:08:46 -04:00
Mariusz Felisiak 91b2bc3e70 Fixed #27860 -- Dropped varchar_pattern_ops/text_pattern_ops index before altering char/text field in PostgreSQL.
Thanks Tim Graham for the review.
2017-05-24 07:25:59 +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
Tim Schneider 3a5299c19c Fixed #28197 -- Fixed introspection of index field ordering on PostgreSQL. 2017-05-15 08:33:31 -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
Tim Graham 05098fa449 Fixed typo in django/db/backends/base/schema.py comment. 2017-05-01 20:45:33 -04:00
Markus Holtermann 663e48947f Fixed #28052 -- Prevented dropping Meta.indexes when changing db_index to False.
Thanks Marc Tamlyn for the report and Ian Foote/Tim Graham for review.
2017-05-01 11:31:48 -04:00
Mariusz Felisiak 946775227c Fixed #28138 -- Used ​output type handler instead of numbersAsStrings on Oracle ​cursor.
Thanks Tim Graham for the review.
2017-04-28 16:27:21 +02:00
Tim Graham 8095496a1c Fixed force_text() import in Oracle backend. 2017-04-27 08:47:33 -04:00
Claude Paroz 301de774c2 Refs #27795 -- Replaced many force_text() with str()
Thanks Tim Graham for the review.
2017-04-27 09:10:02 +02:00
Mariusz Felisiak e776dd2db6 Fixed #28116 -- Used error code filtering in PostgreSQL test database creation.
Thanks Claude Paroz and Tim Graham for reviews.
2017-04-25 06:01:25 +02:00
Mariusz Felisiak 87f9a3c5b2 Updated Oracle docs links to Oracle 12c. 2017-04-21 16:02:31 +02:00
Mariusz Felisiak 63b36d6419 Removed unused DatabaseIntrospection._name_to_index() from Oracle backend.
Unused since its introduction in cac7675f24.
2017-04-18 14:17:08 +02:00
Mariusz Felisiak e5dce7b0fb Refs #27795 -- Removed unneeded force_text calls from the Oracle backend. 2017-04-17 14:22:00 +02:00
Mariusz Felisiak e1253bc26f Refs #25406 -- Removed exception hiding in MySQL test database creation during --keepdb.
Thanks Adam Johnson, Simon Charette and Tim Graham for reviews.
2017-04-13 20:20:01 +02:00
Sergey Fedoseev e7afef13f5 Fixed #26788 -- Fixed QuerySet.update() crash when updating a geometry to another one. 2017-04-10 13:26:26 -04:00
Mariusz Felisiak 64264c9a19 Fixed #25406 -- Removed exception hiding in PostgreSQL test database creation during --keepdb.
Thanks Markus Holtermann and Tim Graham for reviews.
2017-04-10 13:04:00 -04:00
Mariusz Felisiak 054a44d6f0 Used NotSupportedError instead of DatabaseError in SQLCompiler.as_sql(). 2017-04-10 12:49:27 -04:00
Simon Charette a354c69055 Fixed #28038 -- Restored casting to text of builtin lookups on PostgreSQL.
Reverted 658f1e8 which broke code using __icontains's implicit cast to ::text
on ArrayField.

Thanks Peter J. Farrell for the report.
2017-04-07 16:47:52 -04:00
Mariusz Felisiak 695d4dd790 Fixed #23147 -- Disabled a limit/offset on a query with select_for_update on Oracle.
Thanks Shai Berger and Tim Graham for the reviews.
2017-04-07 14:08:07 +02:00
Simon Charette 35c0025151 Fixed #27928 -- Avoided SET/DROP DEFAULT unless a field changes from null to non-null.
Thanks Christophe Pettus, Matteo Pietro Russo for reports and Tim for review.
2017-04-02 16:34:03 -04:00
Chris Sinchok 66150f7cf6 Fixed #27954 -- Allowed keyboard interrupt to abort queries in PostgreSQL dbshell.
Thanks Tim Martin for review.
2017-04-01 21:01:08 -04:00
Tim Graham eca6f91be2 Updated cx_Oracle arraysize comment. 2017-03-28 09:41:45 -04:00
Mariusz Felisiak f42c7cc87b Refs #21160 -- Replaced DatabaseFeatures.supports_1000_query_parameters by a DatabaseFeatures.max_query_params. 2017-03-24 18:37:03 +01:00
Mariusz Felisiak 43380e9110 Fixed #27966 -- Bumped required psycopg2 version to 2.5.4.
Thanks Tim Graham for the review.
2017-03-21 17:23:17 +01:00
Mariusz Felisiak 75503a823f Fixed #27924 -- Added support for cx_Oracle 5.3.
- Fixed Oracle backend due to cx_Oracle 5.3 change in the
Cursor.description behavior i.e. "Use None instead of 0 for items in
the Cursor.description attribute that do not have any validity.".
- Used cx_Oracle.Object.size() instead of len().
Thanks Tim Graham for the review.
2017-03-10 23:02:44 +01:00
Mariusz Felisiak 94d8bea212 Fixed #24365 -- Made inspectdb translate MySQL unsigned integer columns to positive integer fields. 2017-03-08 10:56:00 -05:00
Claude Paroz 8346680e1c Refs #27795 -- Removed unneeded force_text calls
Thanks Tim Graham for the review.
2017-03-04 18:18:21 +01:00
Mariusz Felisiak 6b47431aaf Refs #27860 -- Simplified deleting indexes on PostgreSQL using "IF EXISTS". 2017-03-03 10:50:34 -05:00
Tim Graham 29ea9714ee Removed PostgreSQL version detection for psycopg2 < 2.0.12. 2017-03-01 13:17:34 -05:00
Anton Samarchyan 60e52a047e Refs #27656 -- Updated django.db docstring verbs according to PEP 257. 2017-02-28 09:17:27 -05:00
Tim Graham 6b00af5014 Refs #27802 -- Corrected BaseDatabaseOperations.datetime_extract/trunc_sql() docstrings. 2017-02-27 10:07:24 -05:00
Tim Graham 82026d61a3 Refs #27843 -- Fixed 'invalid escape sequence' warning in truncate_name(). 2017-02-27 09:28:02 -05:00
Vytis Banaitis 3dcc351691 Refs #23919 -- Used yield from. 2017-02-23 20:06:01 -05:00
Tim Graham 0a0c24581e Refs #26285 -- Removed postgresql's unused DatabaseOperations.fulltext_search_sql().
Should have been removed in 5139832398.
2017-02-21 13:10:24 -05:00
Vytis Banaitis 4045fd56cb Fixed #27856 -- Improved accuracy of date subtraction on PostgreSQL.
Accuracy was incorrect when dates differ by a month or more.
2017-02-21 12:06:16 -05:00
Mariusz Felisiak b935190572 Fixed #27843 -- Fixed truncate_name() when the name contains a username. 2017-02-17 09:24:55 -05:00
Tim Graham b008f7cc56 Fixed #27135 -- Made index introspection return Index.suffix. 2017-02-15 20:15:02 -05:00
Mikhail Nacharov c4e2fc5d98 Fixed #22669 -- Fixed QuerySet.bulk_create() with empty model fields on Oracle. 2017-02-09 18:47:08 -05:00
Mariusz Felisiak 965f678a39 Fixed #25898 -- Made test database/user creation on Oracle reraise unexpected errors.
Thanks Shai Berger and Tim Graham for review.
2017-02-09 17:55:07 -05:00
Tim Graham 500532c95d Refs #23919 -- Removed default 'utf-8' argument for str.encode()/decode(). 2017-02-09 09:03:47 -05:00
Mariusz Felisiak 1b96dbdad0 Fixed #27822 -- Replaced deprecated cx_Oracle types in DatabaseIntrospection.data_types_reverse. 2017-02-09 08:57:34 -05:00
Mariusz Felisiak 15c14f6f16 Fixed #27802 -- Unified return value of db backend datetime SQL methods. 2017-02-06 09:19:13 -05:00
Tim Graham 924af638e4 Fixed #27683 -- Made MySQL default to the read committed isolation level.
Thanks Shai Berger for test help and Adam Johnson for review.
2017-02-01 15:34:17 -05:00
Vytis Banaitis 8838d4dd49 Refs #23919 -- Replaced kwargs.pop() with keyword-only arguments. 2017-02-01 11:41:56 -05:00
Claude Paroz 52138b1fd0 Refs #23919 -- Removed usage of obsolete SafeBytes class
The class will be removed as part of #27753.
Thanks Tim Graham for the review.
2017-01-30 15:04:45 +01:00
Mariusz Felisiak 89501d9298 Fixed #27789 -- Simplified query for sequence value on Oracle. 2017-01-30 08:03:42 -05:00
Tim Graham 0de0699d94 Fixed #27788 -- Dropped support for Oracle < 12.1. 2017-01-28 08:19:47 -05:00
Vytis Banaitis d1bab24e01 Refs #23919, #27778 -- Removed obsolete mentions of unicode. 2017-01-26 08:19:27 -05:00
Tim Graham 1c466994d9 Refs #23919 -- Removed misc Python 2/3 references. 2017-01-25 13:59:25 -05:00
chillaranand d6eaf7c018 Refs #23919 -- Replaced super(ClassName, self) with super(). 2017-01-25 12:23:46 -05:00
Tim Graham 2d96c027f5 Refs #23919 -- Removed obsolete MySQLdb references. 2017-01-25 10:16:10 -05:00
Tim Graham 3f0c4fe18f Refs #25175 -- Deprecated db.backends.postgresql_psycopg2 module. 2017-01-25 09:23:04 -05:00
Mads Jensen ebf34c3cdc Removed unused variables that are overwritten. 2017-01-25 09:14:05 -05:00
Tim Graham 5b95d421f7 Refs #23919 -- Removed a MySQLdb workaround (refs #6052) for Python 2. 2017-01-24 08:35:06 -05:00
Tim Graham 248d54569e Removed MySQL decimal casting.
Added in Django 1.0: 92c35a0617
Unknown when it became obsolete.
2017-01-23 10:44:02 -05:00
Claude Paroz 6e55e1d88a Refs #23919 -- Replaced six.reraise by raise 2017-01-22 20:08:04 +01:00
Tim Graham d170c63351 Refs #23919 -- Removed misc references to Python 2. 2017-01-21 20:02:00 -05:00
Tim Graham 1b06d5e6f6 Refs #23919 -- Removed pysqlite support (it's Python 2 only). 2017-01-20 18:21:15 -05:00
Claude Paroz 042b7350a0 Refs #23919 -- Removed unneeded str() calls 2017-01-20 14:13:55 +01:00
Claude Paroz dc8834cad4 Refs #23919 -- Removed unneeded force_str calls 2017-01-20 08:44:31 +01:00
Mariusz Felisiak bf1c957027 Refs #23919 -- Removed Python 2 workaround for hashing Oracle params (refs #27632). 2017-01-19 22:20:14 -05:00
james mike dupont 7d20094996 Fixed spelling mistakes in code and comments. 2017-01-19 07:52:41 -05:00