Markus Gerards
2b64ff68cc
Fixed #27180 -- Fixed a crash in MySQL checks where SELECT @@sql_mode doesn't return a result.
2016-09-07 11:15:41 -04:00
Akshesh
dbccf163b6
Fixed #27097 -- Added index type introspection to built-in db backends.
2016-09-02 21:14:12 -04:00
Marcos Vives Del Sol
d6b9aab37c
Fixed #25476 -- Allowed PostgreSQL introspection to work regardless of table owner.
2016-09-02 20:11:23 -04:00
Claude Paroz
a72411e140
Removed double semicolon in SQL query
2016-08-30 19:12:55 +02:00
Akshesh
4c7bf83cde
Refs #27097 , #27098 -- Moved PostgreSQL index type introspection to get_constraints().
2016-08-30 08:48:55 -04:00
Chris Jerdonek
a3db480393
Fixed #27061 -- Added a TEST['TEMPLATE'] setting for PostgreSQL.
2016-08-23 15:08:20 -04:00
Claude Paroz
00bb47b58f
Fixed #27096 -- Fixed primary key introspection for sqlite3 backend
2016-08-20 15:57:17 +02:00
Matthew Wilkes
4f138fe5a4
Fixed #22288 -- Fixed F() expressions with the __range lookup.
2016-08-19 13:40:56 -04:00
Chris Jerdonek
3d0a3c5fff
Fixed #27077 -- Made SQLite's in-memory database checks DRYer.
2016-08-17 20:34:18 -04:00
Chris Jerdonek
49fcbe73c5
Fixed #27078 -- Simplified "if" logic in SQLite's _get_test_db_name().
2016-08-17 16:20:01 -04:00
Claude Paroz
21aec54296
Removed unnecessary registration of psycopg2 unicode extensions on Python 3
2016-08-15 20:57:57 +02:00
Akshesh
6e07ec3f65
Fixed #27030 -- Added contrib.postgres.indexes.GinIndex.
2016-08-12 18:37:03 -04:00
Akshesh
2f19306a12
Refs #27030 -- Added index type introspection on PostgreSQL.
2016-08-12 16:58:40 -04:00
Akshesh
f842d1011c
Refs #20888 -- Added index order introspection.
2016-08-12 11:51:09 -04:00
Akshesh
324c1b432a
Fixed #24442 -- Improved SchemaEditor's index name truncation.
2016-08-11 14:36:31 -04:00
Simon Charette
b8e6e1b43b
Fixed #26500 -- Added SKIP LOCKED support to select_for_update().
...
Thanks Tim for the review.
2016-08-08 12:01:43 -04:00
Akshesh
6a8372e6ec
Fixed #26808 -- Added Meta.indexes for class-based indexes.
...
* Added the index name to its deconstruction.
* Added indexes to sqlite3.schema._remake_table() so that indexes
aren't dropped when _remake_table() is called.
Thanks timgraham & MarkusH for review and advice.
2016-08-05 18:12:51 -04:00
Tim Graham
d95c669c29
Fixed #26991 -- Fixed a crash in MySQL where SQL_AUTO_IS_NULL doesn't return a result.
2016-08-02 10:52:31 -04:00
Adam Chainz
4b1c9708d6
Fixed #26966 -- Made MySQL backend skip defaults for JSON columns
...
Thanks mcgeeco for reporting, and claudep and timgraham for review.
2016-08-01 13:51:25 -04:00
Anderson Resende
0d1218896f
Fixed #26950 -- Removed obsolete DatabaseOperations SQL methods.
...
Unused as of 2b039d966f
.
2016-07-27 07:34:44 -04:00
Claude Paroz
3ea7167bb5
Refs #24928 -- Added introspection support for UUIDField
2016-07-20 17:27:29 +02:00
akki
767849b765
Removed unnecessary looping in sqlite3 SchemaEditor.
2016-07-18 08:47:30 -04:00
Jon Dufresne
3f76d1402d
Refs #26889 -- Refactored SchemaEditor to allow backend specific indexes.
2016-07-15 10:34:37 -04:00
Marc-Aurèle Brothier
f8bfa80680
Fixed #26868 -- Changed MySQL version detection to use a query.
...
Workaround a bug with MariaDB and MySQL native client not stripping the
`5.5.5-` prefix.
2016-07-15 10:05:03 -04:00
Jon Dufresne
2e4cfcd2b9
Fixed #26889 -- Fixed missing PostgreSQL index in SchemaEditor.add_field().
2016-07-13 14:33:54 -07:00
Simon Charette
8a4f017f45
Fixed #26348 -- Added TruncTime and exposed it through the __time lookup.
...
Thanks Tim for the review.
2016-07-08 12:35:34 -04:00
Simon Charette
082c52dbed
Refs #25774 , #26348 -- Allowed Trunc functions to operate with time fields.
...
Thanks Josh for the amazing testing setup and Tim for the review.
2016-07-08 12:35:34 -04:00
Simon Charette
c4a876a0c1
Refs #17260 -- Prevented Oracle timezone conversion from stripping microseonds.
2016-07-08 12:35:33 -04:00
Jon Dufresne
9356f63a99
Fixed #25317 , #26090 -- Fixed swapping combinations of unique and db_index during migrations.
2016-07-07 20:29:08 -04:00
Akshesh
52442898e7
Refs #26709 -- Added 'model' argument to SchemaEditor.add/remove_index()
...
This removes the dependency of the Index class on its model attribute
when a name is passed to it.
Thanks to Markush for discussions.
2016-07-07 10:06:55 -04:00
Jon Dufresne
3410820460
Fixed #26833 -- Fixed SchemaEditor._constraint_names() to handle features.uppercases_column_names.
2016-07-07 08:09:42 -04:00
akki
2960e3a3a7
Fixed #26841 -- Avoid remake tables for altering togethers in sqlite3 ( #6888 )
...
alter_index_together and alter_unique_together no more use _remake_table method in sqlite3
2016-07-06 10:03:47 +02:00
Adam Dobrawy
92d323ccb5
Added package names to 'Error loading MySQLdb module' error.
2016-07-01 13:12:27 -04:00
Jon Dufresne
16614dcd5c
Fixed #25694 -- Removed incorrect _uniq suffix on index names during migrations.
2016-06-29 14:47:29 -04:00
Aaron Elliot Ross
6bf7964023
Fixed #26171 -- Made MySQL create an index on ForeignKeys with db_contraint=False.
...
Refactored "Prevented unneeded index creation on MySQL-InnoDB" (2ceb10f
)
to avoid setting db_index=False.
2016-06-28 08:22:20 -04:00
Étienne BERSAC
03f6d272ab
Fixed #26751 -- Made dbshell exit with the shell's error code.
2016-06-27 12:20:40 -04:00
Akshesh
156e2d59cf
Fixed #26709 -- Added class-based indexes.
...
Added the AddIndex and RemoveIndex operations to use them in migrations.
Thanks markush, mjtamlyn, timgraham, and charettes for review and advice.
2016-06-27 10:41:01 -04:00
Simon Charette
c2e62fd1ae
Fixed #26781 -- Made table name case change a noop on SQLite.
...
SQLite disgresses from the SQL standard by ignoring case of quoted identifiers.
Thanks to laozzzi for the report and Tim for the review.
2016-06-21 16:37:06 -04:00
Ville Skyttä
96f97691ad
Fixed broken links in docs and comments.
2016-06-15 21:20:23 -04:00
Simon Charette
b484f167be
Fixed #26712 -- Avoided unnecessary SET TIMEZONE queries on PostgreSQL.
...
A change of the USE_TZ or TIME_ZONE settings doesn't necessarily require a
change to the active connections' timezones.
2016-06-06 11:26:02 -04:00
mieciu
19ff506878
Fixed #26698 -- Fixed PostgreSQL dbshell crash on an empty database name.
2016-06-03 12:30:21 -04:00
Barthelemy Dagenais
a5c8072ab1
Fixed #26627 -- Fixed on_commit callbacks execution order when callbacks make transactions.
2016-05-18 09:09:48 -04:00
Josh Smeaton
77b73e79a4
Refs #25774 -- Made Oracle truncate microseconds if USE_TZ=False.
...
The tests for this change are in the fix for #25774 .
2016-05-18 20:14:58 +10:00
Philip Liberato
3630b49b55
Fixed #26613 -- Made sqlite3 optional in SchemaEditor.quote_value().
2016-05-17 21:43:37 -04:00
boaz85@gmail.com
5f23f904af
Fixed #14415 -- Used the test database name in BaseDatabaseCreation.test_db_signature().
2016-05-17 21:35:36 -04:00
Iacopo Spalletti
49c57f8565
Fixed #25005 -- Made date and time fields with auto_now/auto_now_add use effective default.
...
Thanks to Andriy Sokolovskiy for initial patch.
2016-05-09 07:48:40 -04:00
Ville Skyttä
413f3bb5c8
Replaced `six.callable` with `callable`.
2016-05-08 18:07:15 -04:00
Markus Holtermann
deeffde84a
Fixed #26593 -- Leveraged deferrable_sql() in SchemaEditor
2016-05-07 01:21:00 +02:00
Ville Skyttä
575a9a791e
Normalized "an SQL" spelling.
2016-05-03 19:30:48 -04:00
Joshua Phillips
4681d65048
Fixed #26557 -- Converted empty strings to None when saving GenericIPAddressField.
2016-04-29 10:11:49 -04:00
Marc Tamlyn
2d877da855
Refs #3254 -- Added full text search to contrib.postgres.
...
Adds a reasonably feature complete implementation of full text search
using the built in PostgreSQL engine. It uses public APIs from
Expression and Lookup.
With thanks to Tim Graham, Simon Charettes, Josh Smeaton, Mikey Ariel
and many others for their advice and review. Particular thanks also go
to the supporters of the contrib.postgres kickstarter.
2016-04-22 10:44:37 +01:00
Lukasz Wiecek
d3c87a2425
Fixed #26498 -- Fixed TimeField microseconds round-tripping on MySQL and SQLite.
...
Thanks adamchainz for the report and review.
2016-04-18 09:39:46 -04:00
Claude Paroz
f9a2a7db17
Fixed #26351 -- Added MySQL check to warn about strict mode option
...
Thanks Adam Chainz for the initial implementation in django-mysql.
Thanks Adam Chainz, Tim Graham, and Shai Berger for the reviews.
2016-04-08 20:34:16 +02:00
Claude Paroz
0d3c616fbb
Refs #26351 -- Added check hook to support database-related checks
...
Thanks Tim Graham and Shai Berger for the reviews.
2016-04-08 20:28:00 +02:00
Tim Graham
df8d8d4292
Fixed E128 flake8 warnings in django/.
2016-04-08 09:51:06 -04:00
Tim Graham
6448873197
Fixed E402 flake8 warnings.
2016-04-04 17:14:27 -04:00
Tim Graham
2cd2d18851
Fixed W503 flake8 warnings.
2016-04-04 17:14:26 -04:00
Alex Hill
4b2cf1cd27
Fixed #26384 -- Fixed renaming the PK on a model with a self-referential FK on SQLite.
2016-03-29 13:25:09 -04:00
Andrew Godwin
2b3a941457
Merge pull request #6310 from apollo13/informix
...
Pass type to sql_alter_column*.
2016-03-18 19:47:15 -03:00
Florian Apolloner
37cde8667e
Pass type to sql_alter_column*.
...
This helps databases which need the database type when changing the default
(Just like MySQL needs it for changing null…)
2016-03-18 23:11:02 +01:00
Markus Holtermann
1cb65b8a77
Fixed #26157 #25321 -- Added sql/params to extra context of schema logger
...
Thanks Akshesh Doshi for the initial patch and Tim Graham for the review
2016-03-15 17:45:58 +11:00
Claude Paroz
204e00c0c5
Fixed #26140 -- Suppressed MySQL warning when inserting binary content
...
Thanks Tim Graham for the review.
2016-03-14 18:08:13 +01:00
Marc Tamlyn
8ddc79a799
Fixed #26285 -- Deprecated the MySQL-specific __search lookup.
2016-03-02 14:41:56 -05:00
acrefoot
04240b2365
Refs #19527 -- Allowed QuerySet.bulk_create() to set the primary key of its objects.
...
PostgreSQL support only.
Thanks Vladislav Manchev and alesasnouski for working on the patch.
2016-03-02 14:29:09 -05:00
Matthew Schinckel
60633ef3de
Fixed #26304 -- Ignored unmanaged through model in table introspection.
2016-03-02 13:54:27 -05:00
Simon Charette
766afc22a1
Fixed #24793 -- Unified temporal difference support.
2016-02-26 12:25:12 -05:00
zshimanchik
65aa94200b
Fixed #24653 -- Fixed MySQL database introspection when using read_default_file.
2016-02-26 12:02:13 -05:00
Akshesh
fdccc02576
Fixed #26219 -- Fixed crash when filtering by Decimal in RawQuery.
2016-02-17 13:56:42 -05:00
Tim Graham
004ba0f99e
Removed unneeded hint=None/obj=None in system check messages.
2016-02-12 13:01:25 -05:00
Tim Graham
97eb3356b2
Fixed #26177 -- Fixed a PostgreSQL crash with TIME_ZONE=None and USE_TZ=False.
2016-02-08 07:21:54 -05:00
Pankrat
f91a04621e
Fixed #25833 -- Added support for non-atomic migrations.
...
Added the Migration.atomic attribute which can be set to False
for non-atomic migrations.
2016-02-05 09:09:05 -05:00
userimack
60586dd737
Fixed #26125 -- Fixed E731 flake warnings.
2016-01-25 14:23:43 -05:00
seungkwon
5925e20c37
Fixed typo in django/db/backends/sqlite3/operations.py.
2016-01-23 07:05:47 -05:00
Tim Graham
4dc74371e3
Removed unused attributes of MySQL SchemaEditor.
2016-01-22 12:46:27 -05:00
Aymeric Augustin
f91b5a7e4b
Fixed #26063 -- Crash when passing > 2000 params.
...
If SQLITE_MAX_VARIABLE_NUMBER (default = 999) is changed at compile time
to be greater than SQLITE_MAX_COLUMN (default = 2000), which Debian does
by setting the former to 250000, Django raised an exception on queries
containing more than 2000 parameters when DEBUG = True.
2016-01-21 10:47:15 +01:00
pp
b34ff66e5b
Added missing period to "etc.".
2016-01-11 18:05:15 -05:00
Curtis Maloney
3792e291e6
Removed use of locals for print formatting in Oracle backend.
2016-01-11 07:13:24 -05:00
Tim Graham
56aaae58a7
Fixed #26034 -- Fixed incorrect index handling on PostgreSQL on Char/TextField with unique=True and db_index=True.
...
Thanks Simon Charette for review.
2016-01-08 12:47:05 -05:00
Ville Skyttä
e6ca15c13f
Passed logging message parameters as arguments instead of interpolating them.
2015-12-26 18:35:42 -05:00
Alexander Sosnovskiy
2a7ce34600
Fixed #14286 -- Added models.BigAutoField.
2015-12-25 20:01:31 -05:00
Sergey Fedoseev
ed1bcf0515
Refs #25894 -- Fixed evaluation of zero-length slices of QuerySet.values() on Oracle.
2015-12-17 17:07:10 -05:00
Stewart Park
b7fdd60d85
Fixed #24675 -- Skipped SQL_AUTO_IS_NULL query on MySQL if not needed.
2015-12-15 10:30:57 -05:00
Federico Frenguelli
3a36c80795
Fixed #25412 -- Fixed missing PostgreSQL index on Char/TextField when using AlterField.
...
Thanks to Emanuele Palazzetti for the help.
2015-12-10 16:12:51 -05:00
George Marshall
710e11d076
Fixed #25767 -- Fixed data truncation possibility with Positive(Small)IntegerField on MySQL.
2015-11-24 11:09:15 -05:00
Tim Graham
abcdb237bb
Refs #25196 -- Fixed incorrect argument order in test database creation.
2015-11-13 11:29:35 -05:00
Tim Graham
0b5d32faca
Fixed #25611 -- Standardized descriptor signatures.
2015-10-26 11:31:16 -04:00
Mariusz Felisiak
0f6d51e6a0
Fixed #25470 -- Avoided unnecessary, expensive DATETIME typecast on MySQL.
2015-10-21 19:24:19 -04:00
Tim Graham
7a5b7e35bf
Fixed #22705 -- Fixed QuerySet.bulk_create() on models without any fields on Oracle.
...
Fixed on other backends by 134ca4d438
.
Thanks Mariusz Felisiak for the solution.
2015-10-09 14:16:06 -04:00
Riccardo Magliocchetti
3543fec3b7
Refs #12118 -- Allowed "mode=memory" in SQLite test database names.
2015-10-06 12:32:05 -04:00
Mariusz Felisiak
a3a6def867
Fixed #25421 -- Fixed test --keepdb option on Oracle.
2015-09-26 19:51:15 -04:00
Ville Skyttä
afe777639c
Fixed #25196 -- Normalized database representations in test database messages.
...
Left over Oracle mostly as-is since it's more complicated.
2015-09-25 10:21:55 -04:00
Alex Hill
134ca4d438
Fixed #24509 -- Added Expression support to SQLInsertCompiler
2015-09-22 23:35:24 +10:00
Hynek Cernoch
4b9d063da0
Refs #17785 -- Made docstring for sqlite3's get_relations() consistent with other backends.
2015-09-18 09:32:36 -04:00
Aymeric Augustin
4f6a7663bc
Refs #14091 -- Fixed connection.queries on SQLite.
2015-09-17 23:01:33 +02:00
Ville Skyttä
4d933ad418
Fixed #25393 -- Fixed MySQL crash when adding text/blob field with unhashable default.
2015-09-14 12:25:08 -04:00
Adam Chainz
b2f6e421a3
Fixed #25329 -- Prevented _nodb_connection from being left open
2015-09-11 08:40:43 +02:00
Aymeric Augustin
33c7c2a557
Enabled parallel testing by default in runtests.py.
2015-09-10 13:34:05 +02:00
Aymeric Augustin
05cea7fdbb
Changed database connection duplication technique.
...
This new technique is more straightforward and compatible with test
parallelization, where the effective database connection settings no
longer match settings.DATABASES.
2015-09-09 23:03:51 +02:00
Aymeric Augustin
0586c061f0
Cloned databases for running tests in parallel.
2015-09-09 23:01:15 +02:00
Aymeric Augustin
6d1110f2f0
Updated references to the TEST_* database settings.
...
They were removed in Django 1.9.
I could leave the reference to TEST_DEPENDENCIES in the 1.2.4 release
notes because the link points to the right location and the name was
accurate at the time.
2015-09-05 19:21:22 +02:00
Maxime Lorant
5153a3bfdc
Fixed #25331 -- Removed trailing blank lines in docstrings.
2015-08-31 17:37:21 -04:00
Caio Ariede
dad8434d6f
Fixed #25180 -- Prevented varchar_patterns_ops and text_patterns_ops indexes for ArrayField.
2015-08-15 10:02:08 -04:00
Caio Ariede
bcb4fe0012
Refs #25175 -- Added backwards compatibility for importing postgresql_psycopg2 backend.
2015-08-07 09:34:18 -04:00
Caio Ariede
ec9004728e
Fixed #25175 -- Renamed the postgresql_psycopg2 database backend to postgresql.
2015-08-07 09:33:17 -04:00
Tim Graham
c52822e750
Fixed #25128 -- Fixed SQLite SchemaEditor crash when adding a ForeignObject field.
2015-07-15 15:22:52 -04:00
Jean-Michel Vourgère
b64c0d4d61
Fixed #23658 -- Provided the password to PostgreSQL dbshell command
...
The password from settings.py is written in a temporary .pgpass file
file whose name is given to psql using the PGPASSFILE environment
variable.
2015-06-30 18:21:51 -04:00
Shai Berger
eecd42ea7d
Removed datetime_cast_sql, which is never overridden or used anywhere in Django.
...
Thanks Tim Graham for review.
2015-07-01 00:43:45 +03:00
Andreas Pelme
00a1d4d042
Fixed #21803 -- Added support for post-commit callbacks
...
Made it possible to register and run callbacks after a database
transaction is committed with the `transaction.on_commit()` function.
This patch is heavily based on Carl Meyers django-transaction-hooks
<https://django-transaction-hooks.readthedocs.org/ >. Thanks to
Aymeric Augustin, Carl Meyer, and Tim Graham for review and feedback.
2015-06-30 14:51:00 -04:00
Greg Chapple
4a66a69239
Fixed #24887 -- Removed one-arg limit from models.aggregate
2015-06-27 11:44:33 -04:00
Simon Charette
bdb382b2a4
Refs #25002 -- Supported textual to temporal column alteration on Oracle.
...
Thanks to Tim Graham for the report and Shai Berger for the review.
2015-06-24 19:37:55 -04:00
Tim Graham
aaacaeb096
Renamed RemovedInDjangoXYWarnings for new roadmap.
...
Forwardport of ae1d663b79
from stable/1.8.x plus more.
2015-06-24 16:08:20 -04:00
Simon Charette
73040e584a
Fixed #25002 -- Used PostgreSQL column type alteration USING clause.
...
Thanks to Dirk Uys for the report.
2015-06-22 09:35:35 -04:00
Shai Berger
abd7e48af7
Changed Oracle's test-database-creation to use an explicit main-db-connection
...
rather than just relying on manipulation of settings to determine which
invocation of connection.cursor() opens a connection to the test database
and which opens a connection to the main database.
Thanks Aymeric Augustin for motivation and Tim Graham for review.
2015-06-20 23:48:18 +03:00
Daniel Wiesmann
b769bbd4f6
Fixed #23804 -- Added RasterField for PostGIS.
...
Thanks to Tim Graham and Claude Paroz for the reviews and patches.
2015-06-19 14:36:43 -04:00
Tim Graham
7f1168e387
Removed support for Python 3.3.
2015-06-18 08:36:50 -04:00
Adam Brenecki
65296b3be3
Fixed #24972 -- Fixed removing unique_together indexes on MySQL.
2015-06-15 17:28:13 -04:00
Tim Graham
47fcbe506c
Fixed flake8 warnings on Python 3.
2015-06-15 11:27:09 -04:00
Sagar Mittal
e5033dcbba
Imported sqlite3 instead of _sqlite3
...
adapt and ProgrammingError are both available on the
sqlite3 module. There's no need to import the internal
_sqlite3 module.
2015-06-06 11:35:02 -04:00
Ian Foote
4ab53a558a
Fixed #24767 -- Added Greatest and Least expressions
...
Greatest and Least are row-level Function versions of Min and Max.
2015-06-05 11:15:33 +01:00
Shai Berger
35291df7f7
Fixed #19542 : Made mirroring databases for tests work with Oracle
...
No tests are provided because there is no sane way to test database
settings within the Django test suite.
Thanks Aymeric Augustin for review.
2015-06-05 12:29:15 +03:00
Matthew Somerville
2dc93bb10a
Fixed #22316 -- Added time filters to TimeField on SQLite.
...
This was implemented for non-SQLite backends in 1.7 (as a
side effect of #16187 ).
2015-06-04 22:27:13 -04:00
Tim Graham
e1e6399c2c
Fixed #24893 -- Fixed lack of unique constraint when changing a field from primary_key=True to unique=True
2015-06-02 09:25:47 -04:00
Tim Graham
5ab8680983
Fixed #24892 -- Fixed quoting of SQL when renaming a field to AutoField in PostgreSQL
2015-06-02 09:13:55 -04:00
Jon Dufresne
44f3ee7716
Fixed #9596 -- Added date transform for DateTimeField.
2015-06-02 08:49:10 -04:00
Josh Smeaton
c7805ee214
Fixed #24699 -- Added aggregate support for DurationField on Oracle
2015-05-30 20:41:33 -04:00
Adam Chainz
e60cce4e40
Fixed #24846 -- Added support to MySQL SchemaEditor for all blob/text data types
2015-05-30 20:37:57 -04:00
Andriy Sokolovskiy
80ad5472ce
Fixed #24817 -- Prevented loss of null info in MySQL field renaming.
2015-05-28 10:07:52 -04:00
Florian Apolloner
92f37e5f5f
Well, what should I say: UPS.
2015-05-24 17:33:44 +02:00
Andrea Grandi
43b2d88a5b
Fixed #24844 -- Corrected has_changed implementation for HStoreField.
2015-05-24 17:32:16 +02:00
Aymeric Augustin
da2c6959c8
Dropped the needs_datetime_string_cast feature.
...
It has been superseded by the converter infrastructure.
2015-05-17 10:23:13 +02:00
Aymeric Augustin
ed83881e64
Fixed #23820 -- Supported per-database time zone.
...
The primary use case is to interact with a third-party database (not
primarily managed by Django) that doesn't support time zones and where
datetimes are stored in local time when USE_TZ is True.
Configuring a PostgreSQL database with the TIME_ZONE option while USE_TZ
is False used to result in silent data corruption. Now this is an error.
2015-05-17 09:40:28 +02:00
Aymeric Augustin
54026f1e8d
Renamed value_to_db_xxx to adapt_xxxfield_value.
...
This mirrors convert_xxxfield_value nicely, taking advantage of the
adapter/converter terminology which is commonly used by DB-API modules.
2015-05-17 09:39:34 +02:00
Aymeric Augustin
d9521f66b1
Removed global timezone-aware datetime adapters.
...
Refs #23820 .
Fixed #19738 .
Refs #17755 . In order not to introduce a regression for raw queries,
parameters are passed through the connection.ops.value_to_db_* methods,
depending on their type.
2015-05-17 09:38:48 +02:00
Aymeric Augustin
fe6b5e62b1
Normalized the implementation of get_db_converters.
...
Put the types in the same order and checked for None consistently.
2015-05-17 09:36:27 +02:00
Aymeric Augustin
ec186572e6
Removed global timezone-aware datetime converters.
...
Refs #23820 .
2015-05-17 09:36:23 +02:00
Claude Paroz
3226050358
Fixed #24791 -- Added fallback when 'postgres' database isn't available
...
Thanks Carl Meyer and Tim Graham for the reviews.
2015-05-15 18:44:20 +02:00
Claude Paroz
ae635cc365
Fixed #24757 -- Recreated MySQL index when needed during combined index removal
...
Thanks Thomas Recouvreux for the report and Tim Graham for the tests and
review.
2015-05-15 17:07:14 +02:00
Milan Broum
95058606c8
Allowed using the sqlite3 backend as much as possible without _sqlite3.
...
The inner import was dropped during the reorganizing of the database
backends in commit 28308078f3
.
2015-05-04 12:59:59 -04:00
Tim Graham
2d76b61dc2
Fixed #24649 -- Allowed using Avg aggregate on non-numeric field types.
2015-04-25 13:06:14 -04:00
Tim Graham
26996e2d55
Fixed #24499 -- Dropped support for PostGIS 1.5.
2015-04-25 12:21:16 -04:00
Claude Paroz
8097e54832
Fixed #23879 -- Allowed model migration skip based on feature/vendor
...
Thanks Carl Meyer for the report and review, and Tim Graham for the
review.
2015-04-18 15:17:49 +02:00
Claude Paroz
02260ea3f6
Fixed #24595 -- Prevented loss of null info in MySQL field alteration
...
Thanks Simon Percivall for the report, and Simon Charette and Tim
Graham for the reviews.
2015-04-17 10:25:15 +02:00
peterfarrell
f8e8853b51
Fixed #24637 -- Fixed database introspection with SQLite 3.8.9.
2015-04-14 11:29:59 -04:00
Jon Dufresne
2cf58e80d1
Fixed #24584 -- Fixed microsecond handling with older MySQLdb
2015-04-06 22:43:51 +02:00
Alex Hill
07ba148d9e
Cleaned up use of context manager in SQLite schema editor
2015-04-03 09:13:55 -04:00
Andriy Sokolovskiy
29b4a3f513
Removed duplicate attribute in MySQL DatabaseSchemaEditor.
2015-03-30 19:23:41 -04:00
Simon Charette
dc27f3ee0c
Fixed #19259 -- Added group by selected primary keys support.
2015-03-29 22:03:30 -04:00
Andrei Kulakov
e2bfcab065
Fixed #24394 -- Allowed running tests with empty default dictionary.
2015-03-25 17:56:59 -04:00
Anssi Kääriäinen
8f30556329
Renamed Field.rel attribute to remote_field
...
Field.rel is now deprecated. Rel objects have now also remote_field
attribute. This means that self == self.remote_field.remote_field.
In addition, made the Rel objects a bit more like Field objects. Still,
marked ManyToManyFields as null=True.
2015-03-25 08:16:12 -04:00
Tim Graham
13bc311cdb
Removed getLogger alias in django.utils.log.
2015-03-24 08:41:05 -04:00
Claude Paroz
01ec127bae
Fixed #12400 -- Allowed geometry fields in unique_together
...
Thanks Tim Graham for the review.
2015-03-23 19:52:49 +01:00
Alex Hill
880393a902
Explicitly disable FK constraints in SQLite editor
2015-03-21 10:31:07 +01:00
Alex Hill
6c58e53d5d
Safer table alterations under SQLite
...
Table alterations in SQLite require creating a new table and copying
data over from the old one. This change ensures that no Django model
ever exists with the temporary table name as its db_table attribute.
2015-03-21 10:31:07 +01:00
Jean-Louis Fuchs
f4f0060fea
Fixed #24447 -- Made migrations add FK constraints for existing columns
...
When altering from e.g. an IntegerField to a ForeignKey, Django didn't
add a constraint.
2015-03-07 14:09:56 +01:00
Tim Graham
4e8b167e4d
Fixed MySQL build failure introduced by refs #24390 .
...
Added table_name back to _create_index_sql() to prevent
duplicate index names on MySQL.
2015-03-02 13:07:34 -05:00
László Károlyi
f37c11eea3
Fixed #24390 -- Made migration index names deterministic.
2015-03-02 09:25:19 -05:00
Michael Manfre
7fa7dd48c4
Fixed signature of BaseDatabaseOperations.date_interval_sql() and document the change.
2015-02-22 23:23:16 -05:00
Loic Bistuer
bed504d70b
Fixed #24351 , #24346 -- Changed the signature of allow_migrate().
...
The new signature enables better support for routing RunPython and
RunSQL operations, especially w.r.t. reusable and third-party apps.
This commit also takes advantage of the deprecation cycle for the old
signature to remove the backward incompatibility introduced in #22583 ;
RunPython and RunSQL won't call allow_migrate() when when the router
has the old signature.
Thanks Aymeric Augustin and Tim Graham for helping shape up the patch.
Refs 22583.
2015-02-20 21:34:09 +07:00
Marc Tamlyn
32d4db66b9
Update converters to take a consistent set of parameters.
...
As suggested by Anssi. This has the slightly strange side effect of
passing the expression to Expression.convert_value has the expression
passed back to it, but it allows more complex patterns of expressions.
2015-02-20 11:35:52 +00:00
Shai Berger
ceadc94f09
Fixed #24307 : Avoided redundant column nullability modifications on Oracle
...
Thanks Joris Benschop for the report, and Tim Graham for the tests.
2015-02-19 02:39:41 +02:00
Adam Chainz
e9282747a4
Removed unused foreign_key_re variables in MySQL/Oracle DB backends
2015-02-18 10:22:30 -05:00
Tim Graham
63c5c98701
Refs #24324 -- Fixed UnicodeEncodeError in SQLite backend while testing.
...
If 'name' contained non-ASCII characters, the comparison raised a
UnicodeEncodeError on Python 2.
2015-02-17 08:09:46 -05:00
Tim Graham
3adc5f1ee6
Fixed #24335 -- Bumped required psycopg2 version to 2.4.5 (2.5 for contrib.postgres).
2015-02-16 18:07:27 -05:00
Aymeric Augustin
a73c8540a8
Removed 'autocommit' options for the psycopg2 backend.
...
It was documented as not having any effect since Django 1.6.
2015-02-14 18:51:18 +01:00
Aymeric Augustin
28e97a9bdc
Cleaned up init_connection_state in the psycopg2 backend.
...
settings_dict['TIME_ZONE'] is set in ConnectionHandler.ensure_defaults.
2015-02-14 18:51:18 +01:00
Aymeric Augustin
76356d963c
Fixed #24318 -- Set the transaction isolation level with psycopg >= 2.4.2.
2015-02-14 18:51:11 +01:00
Josh Smeaton
e2d6e14662
Refs #14030 -- Improved expression support for python values
2015-02-12 08:46:25 +11:00
Josh Smeaton
1fbe8a2de3
Fixed #24200 -- Made introspection bypass statement cache
2015-02-10 23:24:34 +02:00
Loic Bistuer
c8e24bbc9b
Fixed isort import that's inconsistent between platforms.
2015-02-11 02:24:14 +07:00
я котик пур-пур
981bd64dfb
Unified local imports in django.db.backends.mysql.
2015-02-09 08:23:17 -05:00
Collin Anderson
db77915c9f
Fixed E265 comment style
2015-02-06 09:30:35 -05:00
Tim Graham
0ed7d15563
Sorted imports with isort; refs #23860 .
2015-02-06 08:16:28 -05:00
Tim Graham
75303b01a9
Fixed #24245 -- Added introspection for database defaults.
...
Needed for tests for migrations handling of database defaults.
2015-01-31 12:33:11 -05:00
Tim Graham
64a899dc81
Removed PostgreSQL DatabaseWrapper._set_isolation_level().
...
This method is unused since 8717b0668c
.
2015-01-31 11:05:26 -05:00
Tim Graham
29c0073335
Fixed #24164 -- Fixed Oracle GIS limited aggregation test failure.
2015-01-30 06:28:47 -05:00
Tim Graham
18f3e79b13
Removed threading fallback imports.
...
Django imports threading in many other places without fallback.
2015-01-28 10:23:25 -05:00
Josh Smeaton
8196e4bdf4
Fixed #24154 -- Backends can now check support for expressions
2015-01-27 12:20:06 +11:00
Andriy Sokolovskiy
38c17871bb
Fixed #24104 -- Fixed check to look on field.many_to_many instead of class instance
2015-01-22 18:41:19 +01:00
Adam Taylor
039465a6a7
Fixed typos in code comments.
2015-01-20 12:18:03 -05:00
Markus Holtermann
5792e6a88c
Fixed #24163 -- Removed unique constraint after index on MySQL
...
Thanks Łukasz Harasimowicz for the report.
2015-01-19 16:52:26 +01:00
Tim Graham
2b039d966f
Removed obsolete SQL generation methods.
2015-01-18 15:58:06 -05:00
Tim Graham
7e8cf74dc7
Removed support for syncing apps without migrations per deprecation timeline.
...
Kept support for creating models without migrations when running tests
(especially for Django's test suite).
2015-01-18 15:58:06 -05:00
Tim Graham
3b570dbcdb
Removed BaseDatabaseValidation.validate_field() per deprecation timeline.
2015-01-17 14:58:09 -05:00
Tim Graham
b845951fd4
Required sqlparse for SQL splitting per deprecation timeline.
2015-01-17 10:20:30 -05:00
Tim Graham
4aa089a9a9
Removed support for custom SQL per deprecation timeline.
2015-01-17 10:16:06 -05:00
Tim Graham
f6463bb380
Removed the syncdb command per deprecation timeline.
2015-01-17 09:20:12 -05:00
Tim Graham
9ce36512fa
Removed backwards compatibility shims for "util" modules per deprecation timeline.
...
refs #17627 .
2015-01-17 07:40:12 -05:00
Marc Tamlyn
39d95fb6ad
Fixed #24092 -- Widened base field support for ArrayField.
...
Several issues resolved here, following from a report that a base_field
of GenericIpAddressField was failing.
We were using get_prep_value instead of get_db_prep_value in ArrayField
which was bypassing any extra modifications to the value being made in
the base field's get_db_prep_value. Changing this broke datetime
support, so the postgres backend has gained the relevant operation
methods to send dates/times/datetimes directly to the db backend instead
of casting them to strings. Similarly, a new database feature has been
added allowing the uuid to be passed directly to the backend, as we do
with timedeltas.
On the other side, psycopg2 expects an Inet() instance for IP address
fields, so we add a value_to_db_ipaddress method to wrap the strings on
postgres. We also have to manually add a database adapter to psycopg2,
as we do not wish to use the built in adapter which would turn
everything into Inet() instances.
Thanks to smclenithan for the report.
2015-01-16 16:15:16 -05:00
Claude Paroz
67bcae1e58
Moved check_aggregate_support to BaseSpatialOperations
2015-01-14 22:03:41 +01:00
Tim Graham
28308078f3
Fixed #22603 -- Reorganized classes in django.db.backends.
2015-01-14 14:16:20 -05:00
Michał Modzelewski
65246de7b1
Fixed #24031 -- Added CASE expressions to the ORM.
2015-01-12 18:15:34 -05:00
Shai Berger
aa8ee6a573
Fixed test failures in Oracle introspection
...
Refs #17785
2015-01-13 01:00:09 +02:00
Josh Smeaton
21b858cb67
Fixed #24060 -- Added OrderBy Expressions
2015-01-13 09:39:55 +11:00
Claude Paroz
4c413e231c
Fixed #17785 -- Preferred column names in get_relations introspection
...
Thanks Thomas Güttler for the report and the initial patch, and
Tim Graham for the review.
2015-01-12 19:58:47 +01:00
Claude Paroz
68a439a18d
Removed supports_binary_field flag as all backends support them
...
It was mainly for MySQL on Python 3, but now the current
recommended MySQL driver for Python 3 (mysqlclient) does support
binary fields, it is unneeded. Refs #20377 .
2015-01-11 23:34:47 +01:00
Claude Paroz
7289d01973
Introspected alternate SQLite FK definitions
2015-01-10 16:51:14 +01:00
Anssi Kääriäinen
0c7633178f
Fixed #24020 -- Refactored SQL compiler to use expressions
...
Refactored compiler SELECT, GROUP BY and ORDER BY generation.
While there, also refactored select_related() implementation
(get_cached_row() and get_klass_info() are now gone!).
Made get_db_converters() method work on expressions instead of
internal_type. This allows the backend converters to target
specific expressions if need be.
Added query.context, this can be used to set per-query state.
Also changed the signature of database converters. They now accept
context as an argument.
2015-01-08 14:07:54 -05:00
Daniel Pyrathon
fb48eb0581
Fixed #12663 -- Formalized the Model._meta API for retrieving fields.
...
Thanks to Russell Keith-Magee for mentoring this Google Summer of
Code 2014 project and everyone else who helped with the patch!
2015-01-06 19:25:12 -05:00
Tim Graham
478d6a9503
Copied BaseDatabaseCreation._digest() to SchemaEditor to remove dependency.
...
refs #22340 .
2014-12-31 08:33:34 -05:00
Tim Graham
93d73dac91
Moved DatabaseCreation.data_types properties to DatabaseWrapper.
...
refs #22340 .
2014-12-31 08:29:17 -05:00
Tim Graham
8082c75d18
Removed db.backends methods which only call super().
2014-12-30 11:53:59 -05:00
Andriy Sokolovskiy
8c99b7920e
Fixed #12118 -- Added shared cache support to SQLite in-memory testing.
2014-12-30 10:14:33 -05:00
Tim Graham
ab4f709da4
Fixed #23581 -- Prevented extraneous DROP DEFAULT statements.
...
Thanks john_scott for the report and Markus Holtermann for review.
2014-12-30 07:54:05 -05:00
Claude Paroz
3c5d1edb39
Fixed #22279 -- Prevented dummy backend going through DatabaseErrorWrapper
...
Thanks Daniel Hahler for the report and Tim Graham for the review.
2014-12-29 19:06:28 +01:00
Claude Paroz
2ceb10f3b0
Fixed #14180 -- Prevented unneeded index creation on MySQL-InnoDB
...
Thanks zimnyx for the report and Simon Charette, Tim Graham for
the reviews.
2014-12-27 12:52:44 +01:00
Josh Smeaton
4718296546
Fixed #23753 -- Added a suite of SQL Functions
...
Added functions and tests
Added docs and more tests
Added TextField converter to mysql backend
Aliased Value as V in example docs and tests
Removed unicode_compatible in example
Fixed console emulation in examples
2014-12-27 15:27:27 +11:00
Claude Paroz
30cbd5d360
Replaced DatabaseCreation sql methods by schema editor equivalents
...
Also used schema editor in migrate to sync unmigrated apps (sync_apps).
Refs #22340 . Thanks Tim Graham for the review.
2014-12-23 19:35:01 +01:00
Anssi Kääriäinen
227a4c48be
Refs #2443 -- fixed format_dtdelta on SQLite
...
A test failed on Python 2 32-bit.
2014-12-23 07:05:44 -05:00
Marc Tamlyn
962bb9b6bd
Refs #2443 -- Move the durationfield converter logic.
...
This reduces how frequently this logic is run significantly.
Thanks to Anssi for the suggestion.
2014-12-23 10:41:42 +00:00
Marc Tamlyn
5ca82e710e
Fixed #24033 -- Use interval type on Oracle.
...
Use INTERVAL DAY(9) TO SECOND(6) for Durationfield on Oracle rather than
storing as a NUMBER(19) of microseconds.
There are issues with cx_Oracle which require some extra data
manipulation in the database backend when constructing queries, but it
handles the conversion back to timedelta objects cleanly.
Thanks to Shai for the review.
2014-12-23 10:38:32 +00:00
Marc Tamlyn
07728a2c2c
Refs #2443 -- Fix Oracle tests for DurationField.
...
It helps if there are the correct number of microseconds in a second.
2014-12-20 22:04:07 +00:00
Marc Tamlyn
57554442fe
Fixed #2443 -- Added DurationField.
...
A field for storing periods of time - modeled in Python by timedelta. It
is stored in the native interval data type on PostgreSQL and as a bigint
of microseconds on other backends.
Also includes significant changes to the internals of time related maths
in expressions, including the removal of DateModifierNode.
Thanks to Tim and Josh in particular for reviews.
2014-12-20 18:28:29 +00:00
Andriy Sokolovskiy
089047331d
Fixed #23987 -- Made SQLite SchemaEditor always use effective_default().
2014-12-15 13:40:24 -05:00
Shai Berger
7c1f3901bc
Fixed #23991 -- Apparently, Oracle doesn't need the decimal field converter
...
Thanks Josh Smeaton for review.
2014-12-15 00:07:10 +02:00
Claude Paroz
df30ae07fc
Fixed postgis test database initialization
...
Refs #20968 . Allow querying template_postgis presence without
existing test database.
Thanks Tim Graham for the review.
2014-12-12 20:08:07 +01:00
Josh Smeaton
267a1dcd9b
Fixed #23941 -- Removed implicit decimal formatting from expressions.
2014-12-12 10:17:48 -05:00
Claude Paroz
8f97413fae
Fixed #20968 -- Checked Spatialite metadata before migrations
...
Thanks Kenial S. Lee for the initial patch and Tim Graham for
the review.
2014-12-08 22:22:53 +01:00
Jon Dufresne
4468c08d70
Fixed #23968 -- Replaced list comprehension with generators and dict comprehension
2014-12-08 07:58:23 -05:00
Claude Paroz
8d7a48027e
Fixed #23954 -- Added special text/varchar PostgreSQL indexes in migrations
...
Thanks adityagupta104 for the report and Tim Graham for the review.
2014-12-04 21:27:42 +01:00
Tim Graham
765fa36d57
Fixed #23920 -- Fixed MySQL crash when adding blank=True to TextField.
...
Thanks wkornewald for the report and Markus Holtermann for review.
2014-12-04 10:57:10 -05:00
Andriy Sokolovskiy
1739ae9edc
Fixed #23807 -- Ignored non-digits in psycopg2 version
2014-12-01 18:42:08 -05:00
Claude Paroz
e11c6fd218
Fixed #23909 -- Prevented crash when collecting SQL for RunSQL
...
Thanks James Rivett-Carnac for the report and Markus Holtermann
for the review.
2014-12-01 20:26:40 +01:00
Markus Holtermann
d2202ec2d4
Fixed #23880 -- Added missing index_together handling for SQLite
2014-12-01 11:30:33 +07:00
Thomas Chaumeny
6b5d82749c
Fixed #16731 -- Made pattern lookups work properly with F() expressions
2014-11-28 12:50:42 +02:00
Anssi Kääriäinen
cbb5cdd155
Fixed #23867 -- removed DateQuerySet hacks
...
The .dates() queries were implemented by using custom Query, QuerySet,
and Compiler classes. Instead implement them by using expressions and
database converters APIs.
2014-11-26 17:49:25 -05:00
Collin Anderson
d4ea4eea79
Fixed #23889 -- Added more usage of quote_name_unless_alias() to avoid deprecation warnings.
2014-11-21 16:44:50 -05:00
Brad Walker
cfa26f29bd
Reduced reduce() usage; refs #23796 .
...
django.core.exceptions.ValidationError.messages() and
django.db.backends.schema.BaseDatabaseSchemaEditor._alter_field():
Replaced reduce(operator.add, ...) w/uncoupled, explicit sum()
2014-11-20 14:31:14 -05:00
Claude Paroz
1a63093e22
Added AutoField introspection for PostgreSQL
...
Refs #23748 .
2014-11-20 16:13:58 +01:00
Claude Paroz
11662022be
Added AutoField introspection for MySQL
...
Refs #23748 .
2014-11-20 16:13:58 +01:00
Tim Graham
5bcd292098
Fixed #23871 -- Removed promotion of MySQL warnings to errors in DEBUG mode.
2014-11-19 16:07:49 -05:00
Josh Smeaton
f59fd15c49
Fixed #14030 -- Allowed annotations to accept all expressions
2014-11-15 14:00:43 +00:00
Thomas Chaumeny
88b2a20f04
Simplified MySQL storage engine detection using INFORMATION_SCHEMA.ENGINES table
...
Query the table introduced in MySQL 5.1; refs #23144 .
2014-11-10 18:16:14 +01:00
Markus Holtermann
715ccfde24
Fixed #23738 -- Allowed migrating from NULL to NOT NULL with the same default value
...
Thanks to Andrey Antukh for the report.
2014-10-31 13:30:30 -04:00
Claude Paroz
713f23492a
Required MySQLdb >= 1.2.5 for fractional seconds support
...
On MySQLdb < 1.2.5, MySQLdb returns None when fetching datetime/time
values with fractional seconds.
See https://github.com/farcepest/MySQLdb1/issues/24
2014-10-28 15:06:58 +01:00
Claude Paroz
22da5f8817
Fixed #19716 -- Added support for microseconds with MySQL 5.6.4 and up
...
Thanks erik@cederstrand.dk for the report and Tim Graham for the review.
2014-10-28 15:06:58 +01:00
Claude Paroz
9e746c13e8
Stopped stripping microseconds with MySQL backend
...
Refs #19716 .
2014-10-28 15:06:57 +01:00
Claude Paroz
5b8e37a69e
Fixed typo in MySQL backend doctring
...
Thanks CHI Cheng for the report.
2014-10-27 14:01:12 +01:00
Mikhail Denisenko
d4bc0bf435
Fixed #22879 -- Intercept errors coming from cursor.__next__()
2014-10-27 14:51:40 +02:00
Claude Paroz
7f089ac2e3
Fixed #23446 -- Officially recommended mysqlclient as MySQL driver
...
Thanks Corey Farwell for the report and Tim Graham for the review.
Thanks also to Inada Naoki for creating and maintaining mysqlclient.
2014-10-27 09:11:33 +01:00
Claude Paroz
45db842c9b
Fixed #23652 -- Restored database name after destroying test database
...
Thanks Bjarkias for the report.
2014-10-24 17:04:43 +02:00
Tim Graham
92269b7b53
Fixed #23702 -- Fixed adding an explicit id field on SQLite.
...
Thanks gavinwahl for the report.
2014-10-23 12:24:34 -04:00
Shai Berger
2e1ed5f33c
Fixed #23649 -- Made Oracle test-db creation drop test-user earlier when needed
...
Checked database destruction for ORA-29857, which happens when objects of
some types are left over in an old test database (notably, such objects
are created by the GIS backend). When this happens, we can resolve the
issue by dropping the test-user (if we are allowed to).
An alternative approach, to just switch the order of creation (so that,
if the test user exists and can be dropped, it is always dropped before
the tablespace) was considered; but since the user creation depends on
the tablespace, this would necessitate separating the dropping of the user
from its creation -- a change I am reluctant to make.
Thanks Josh Smeaton and Tim Graham for reviews.
2014-10-17 04:46:15 +03:00
Collin Anderson
a6a8268d19
Fixed #23660 -- Moved sort_dependencies to core.
2014-10-16 03:04:13 +07:00
Markus Holtermann
f633ba778d
Fixed #23609 -- Fixed IntegrityError that prevented altering a NULL column into a NOT NULL one due to existing rows
...
Thanks to Simon Charette, Loic Bistuer and Tim Graham for the review.
2014-10-09 21:32:06 +07:00
Thomas Chaumeny
b2aad7b836
Replaced set([foo, ...]) by {foo, ...} literals. Refs PR 3282.
...
Thanks Collin Anderson for the review.
2014-09-29 00:01:38 +07:00
Shai Berger
a54adcecff
Fixed git blunder, refs #22738
2014-09-27 09:57:09 +03:00
Shai Berger
c1ae0621ba
Fixed #22738 -- made finer distinctions for when Boolean is not detected on Oracle
...
Thanks Claude Paroz for partial fix and Simon Charrette for review
2014-09-27 09:49:50 +03:00
Claude Paroz
dbdae3a755
Fixed #22738 -- Abstracted boolean field type introspection
...
Thanks maxi for the report, Shai Berger for his help with the patch
and Tim Graham for the review.
2014-09-26 20:03:44 +02:00
Claude Paroz
d1ca70110f
Factorized schema_editor() at BaseDatabaseWrapper level
2014-09-26 08:50:16 +02:00
Tim Graham
74e7f91e6d
Fixed #23538 -- Added SchemaEditor for MySQL GIS.
...
Thanks Claude Paroz for suggestions and review.
2014-09-25 13:53:44 -04:00