Updated links to the current version of MySQL docs.
This commit is contained in:
parent
bceade84a7
commit
9819676676
|
@ -116,7 +116,7 @@ class MySQLOperations(BaseSpatialOperations, DatabaseOperations):
|
||||||
converters.append(self.convert_invalid_empty_geometry_collection)
|
converters.append(self.convert_invalid_empty_geometry_collection)
|
||||||
return converters
|
return converters
|
||||||
|
|
||||||
# https://dev.mysql.com/doc/refman/5.7/en/spatial-function-argument-handling.html
|
# https://dev.mysql.com/doc/refman/en/spatial-function-argument-handling.html
|
||||||
# MySQL 5.7.5 adds support for the empty geometry collections, but they are represented with invalid WKT.
|
# MySQL 5.7.5 adds support for the empty geometry collections, but they are represented with invalid WKT.
|
||||||
def convert_invalid_empty_geometry_collection(self, value, expression, connection, context):
|
def convert_invalid_empty_geometry_collection(self, value, expression, connection, context):
|
||||||
if value == b'GEOMETRYCOLLECTION()':
|
if value == b'GEOMETRYCOLLECTION()':
|
||||||
|
|
|
@ -79,9 +79,7 @@ django_conversions.update({
|
||||||
})
|
})
|
||||||
|
|
||||||
# This should match the numerical portion of the version numbers (we can treat
|
# This should match the numerical portion of the version numbers (we can treat
|
||||||
# versions like 5.0.24 and 5.0.24a as the same). Based on the list of version
|
# versions like 5.0.24 and 5.0.24a as the same).
|
||||||
# at http://dev.mysql.com/doc/refman/4.1/en/news.html and
|
|
||||||
# http://dev.mysql.com/doc/refman/5.0/en/news.html .
|
|
||||||
server_version_re = re.compile(r'(\d{1,2})\.(\d{1,2})\.(\d{1,2})')
|
server_version_re = re.compile(r'(\d{1,2})\.(\d{1,2})\.(\d{1,2})')
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,7 @@ MySQL Spatial Limitations
|
||||||
MySQL's spatial extensions only support bounding box operations
|
MySQL's spatial extensions only support bounding box operations
|
||||||
(what MySQL calls minimum bounding rectangles, or MBR). Specifically,
|
(what MySQL calls minimum bounding rectangles, or MBR). Specifically,
|
||||||
`MySQL does not conform to the OGC standard
|
`MySQL does not conform to the OGC standard
|
||||||
<https://dev.mysql.com/doc/refman/5.6/en/spatial-relation-functions.html>`_:
|
<https://dev.mysql.com/doc/refman/en/spatial-relation-functions.html>`_:
|
||||||
|
|
||||||
Currently, MySQL does not implement these functions
|
Currently, MySQL does not implement these functions
|
||||||
[``Contains``, ``Crosses``, ``Disjoint``, ``Intersects``, ``Overlaps``,
|
[``Contains``, ``Crosses``, ``Disjoint``, ``Intersects``, ``Overlaps``,
|
||||||
|
@ -431,7 +431,7 @@ Aggregate PostGIS Oracle SpatiaLite
|
||||||
.. [#fnewkb] *See* `PostGIS EWKB, EWKT and Canonical Forms <http://postgis.net/docs/manual-2.1/using_postgis_dbmanagement.html#EWKB_EWKT>`_, PostGIS documentation at Ch. 4.1.2.
|
.. [#fnewkb] *See* `PostGIS EWKB, EWKT and Canonical Forms <http://postgis.net/docs/manual-2.1/using_postgis_dbmanagement.html#EWKB_EWKT>`_, PostGIS documentation at Ch. 4.1.2.
|
||||||
.. [#fngeojson] *See* Howard Butler, Martin Daly, Allan Doyle, Tim Schaub, & Christopher Schmidt, `The GeoJSON Format Specification <http://geojson.org/geojson-spec.html>`_, Revision 1.0 (June 16, 2008).
|
.. [#fngeojson] *See* Howard Butler, Martin Daly, Allan Doyle, Tim Schaub, & Christopher Schmidt, `The GeoJSON Format Specification <http://geojson.org/geojson-spec.html>`_, Revision 1.0 (June 16, 2008).
|
||||||
.. [#fndistsphere15] *See* `PostGIS documentation <http://postgis.net/docs/manual-2.1/ST_Distance_Sphere.html>`_ on ``ST_distance_sphere``.
|
.. [#fndistsphere15] *See* `PostGIS documentation <http://postgis.net/docs/manual-2.1/ST_Distance_Sphere.html>`_ on ``ST_distance_sphere``.
|
||||||
.. [#fnmysqlidx] *See* `Creating Spatial Indexes <https://dev.mysql.com/doc/refman/5.6/en/creating-spatial-indexes.html>`_
|
.. [#fnmysqlidx] *See* `Creating Spatial Indexes <https://dev.mysql.com/doc/refman/en/creating-spatial-indexes.html>`_
|
||||||
in the MySQL Reference Manual:
|
in the MySQL Reference Manual:
|
||||||
|
|
||||||
For MyISAM tables, ``SPATIAL INDEX`` creates an R-tree index. For storage
|
For MyISAM tables, ``SPATIAL INDEX`` creates an R-tree index. For storage
|
||||||
|
|
|
@ -242,9 +242,9 @@ running ``migrate``::
|
||||||
1005, "Can't create table '\\db_name\\.#sql-4a8_ab' (errno: 150)"
|
1005, "Can't create table '\\db_name\\.#sql-4a8_ab' (errno: 150)"
|
||||||
)
|
)
|
||||||
|
|
||||||
.. _storage engines: https://dev.mysql.com/doc/refman/5.6/en/storage-engines.html
|
.. _storage engines: https://dev.mysql.com/doc/refman/en/storage-engines.html
|
||||||
.. _MyISAM: https://dev.mysql.com/doc/refman/5.6/en/myisam-storage-engine.html
|
.. _MyISAM: https://dev.mysql.com/doc/refman/en/myisam-storage-engine.html
|
||||||
.. _InnoDB: https://dev.mysql.com/doc/refman/5.6/en/innodb-storage-engine.html
|
.. _InnoDB: https://dev.mysql.com/doc/refman/en/innodb-storage-engine.html
|
||||||
|
|
||||||
.. [#] Unless this was changed by the packager of your MySQL package. We've
|
.. [#] Unless this was changed by the packager of your MySQL package. We've
|
||||||
had reports that the Windows Community Server installer sets up InnoDB as
|
had reports that the Windows Community Server installer sets up InnoDB as
|
||||||
|
@ -323,7 +323,7 @@ If you plan on using Django's :doc:`timezone support </topics/i18n/timezones>`,
|
||||||
use `mysql_tzinfo_to_sql`_ to load time zone tables into the MySQL database.
|
use `mysql_tzinfo_to_sql`_ to load time zone tables into the MySQL database.
|
||||||
This needs to be done just once for your MySQL server, not per database.
|
This needs to be done just once for your MySQL server, not per database.
|
||||||
|
|
||||||
.. _mysql_tzinfo_to_sql: https://dev.mysql.com/doc/refman/5.6/en/mysql-tzinfo-to-sql.html
|
.. _mysql_tzinfo_to_sql: https://dev.mysql.com/doc/refman/en/mysql-tzinfo-to-sql.html
|
||||||
|
|
||||||
Creating your database
|
Creating your database
|
||||||
----------------------
|
----------------------
|
||||||
|
@ -334,7 +334,7 @@ You can `create your database`_ using the command-line tools and this SQL::
|
||||||
|
|
||||||
This ensures all tables and columns will use UTF-8 by default.
|
This ensures all tables and columns will use UTF-8 by default.
|
||||||
|
|
||||||
.. _create your database: https://dev.mysql.com/doc/refman/5.6/en/create-database.html
|
.. _create your database: https://dev.mysql.com/doc/refman/en/create-database.html
|
||||||
|
|
||||||
.. _mysql-collation:
|
.. _mysql-collation:
|
||||||
|
|
||||||
|
@ -348,7 +348,7 @@ the MySQL documentation. In all cases, you set the collation by directly
|
||||||
manipulating the database tables; Django doesn't provide a way to set this on
|
manipulating the database tables; Django doesn't provide a way to set this on
|
||||||
the model definition.
|
the model definition.
|
||||||
|
|
||||||
.. _documented thoroughly: https://dev.mysql.com/doc/refman/5.6/en/charset.html
|
.. _documented thoroughly: https://dev.mysql.com/doc/refman/en/charset.html
|
||||||
|
|
||||||
By default, with a UTF-8 database, MySQL will use the
|
By default, with a UTF-8 database, MySQL will use the
|
||||||
``utf8_general_ci`` collation. This results in all string equality
|
``utf8_general_ci`` collation. This results in all string equality
|
||||||
|
@ -404,7 +404,7 @@ you should use ``utf8_general_ci`` because it is faster. If this is not acceptab
|
||||||
(for example, if you require German dictionary order), use ``utf8_unicode_ci``
|
(for example, if you require German dictionary order), use ``utf8_unicode_ci``
|
||||||
because it is more accurate.
|
because it is more accurate.
|
||||||
|
|
||||||
.. _MySQL Unicode Character Sets: https://dev.mysql.com/doc/refman/5.7/en/charset-unicode-sets.html
|
.. _MySQL Unicode Character Sets: https://dev.mysql.com/doc/refman/en/charset-unicode-sets.html
|
||||||
|
|
||||||
.. warning::
|
.. warning::
|
||||||
|
|
||||||
|
@ -453,7 +453,7 @@ Several other MySQLdb connection options may be useful, such as ``ssl``,
|
||||||
``init_command``, and ``sql_mode``. Consult the `MySQLdb documentation`_ for
|
``init_command``, and ``sql_mode``. Consult the `MySQLdb documentation`_ for
|
||||||
more details.
|
more details.
|
||||||
|
|
||||||
.. _MySQL option file: https://dev.mysql.com/doc/refman/5.6/en/option-files.html
|
.. _MySQL option file: https://dev.mysql.com/doc/refman/en/option-files.html
|
||||||
.. _MySQLdb documentation: http://mysql-python.sourceforge.net/
|
.. _MySQLdb documentation: http://mysql-python.sourceforge.net/
|
||||||
|
|
||||||
.. _mysql-sql-mode:
|
.. _mysql-sql-mode:
|
||||||
|
@ -467,7 +467,7 @@ warnings into errors when data are truncated upon insertion, so Django highly
|
||||||
recommends activating a `strict mode`_ for MySQL to prevent data loss (either
|
recommends activating a `strict mode`_ for MySQL to prevent data loss (either
|
||||||
``STRICT_TRANS_TABLES`` or ``STRICT_ALL_TABLES``).
|
``STRICT_TRANS_TABLES`` or ``STRICT_ALL_TABLES``).
|
||||||
|
|
||||||
.. _strict mode: https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sql-mode-strict
|
.. _strict mode: https://dev.mysql.com/doc/refman/en/sql-mode.html#sql-mode-strict
|
||||||
|
|
||||||
If you need to customize the SQL mode, you can set the ``sql_mode`` variable
|
If you need to customize the SQL mode, you can set the ``sql_mode`` variable
|
||||||
like other MySQL options: either in a config file or with the entry
|
like other MySQL options: either in a config file or with the entry
|
||||||
|
|
|
@ -767,7 +767,7 @@ object. If it's ``None``, Django uses the :ref:`current time zone
|
||||||
.. _pytz: http://pytz.sourceforge.net/
|
.. _pytz: http://pytz.sourceforge.net/
|
||||||
.. _Time Zones: http://www.postgresql.org/docs/current/static/datatype-datetime.html#DATATYPE-TIMEZONES
|
.. _Time Zones: http://www.postgresql.org/docs/current/static/datatype-datetime.html#DATATYPE-TIMEZONES
|
||||||
.. _Choosing a Time Zone File: https://docs.oracle.com/cd/E11882_01/server.112/e10729/ch4datetime.htm#NLSPG258
|
.. _Choosing a Time Zone File: https://docs.oracle.com/cd/E11882_01/server.112/e10729/ch4datetime.htm#NLSPG258
|
||||||
.. _mysql_tzinfo_to_sql: https://dev.mysql.com/doc/refman/5.6/en/mysql-tzinfo-to-sql.html
|
.. _mysql_tzinfo_to_sql: https://dev.mysql.com/doc/refman/en/mysql-tzinfo-to-sql.html
|
||||||
|
|
||||||
``none()``
|
``none()``
|
||||||
~~~~~~~~~~
|
~~~~~~~~~~
|
||||||
|
@ -2863,7 +2863,7 @@ Note this is only available in MySQL and requires direct manipulation of the
|
||||||
database to add the full-text index. By default Django uses BOOLEAN MODE for
|
database to add the full-text index. By default Django uses BOOLEAN MODE for
|
||||||
full text searches. See the `MySQL documentation`_ for additional details.
|
full text searches. See the `MySQL documentation`_ for additional details.
|
||||||
|
|
||||||
.. _MySQL documentation: https://dev.mysql.com/doc/refman/5.6/en/fulltext-boolean.html
|
.. _MySQL documentation: https://dev.mysql.com/doc/refman/en/fulltext-boolean.html
|
||||||
|
|
||||||
.. fieldlookup:: regex
|
.. fieldlookup:: regex
|
||||||
|
|
||||||
|
|
|
@ -668,7 +668,7 @@ backend-specific.
|
||||||
Supported by the PostgreSQL_ (``postgresql``) and MySQL_ (``mysql``) backends.
|
Supported by the PostgreSQL_ (``postgresql``) and MySQL_ (``mysql``) backends.
|
||||||
|
|
||||||
.. _PostgreSQL: http://www.postgresql.org/docs/current/static/multibyte.html
|
.. _PostgreSQL: http://www.postgresql.org/docs/current/static/multibyte.html
|
||||||
.. _MySQL: https://dev.mysql.com/doc/refman/5.6/en/charset-database.html
|
.. _MySQL: https://dev.mysql.com/doc/refman/en/charset-database.html
|
||||||
|
|
||||||
.. setting:: TEST_COLLATION
|
.. setting:: TEST_COLLATION
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@ able to store certain characters in the database, and information will be lost.
|
||||||
* SQLite users, there is nothing you need to do. SQLite always uses UTF-8
|
* SQLite users, there is nothing you need to do. SQLite always uses UTF-8
|
||||||
for internal encoding.
|
for internal encoding.
|
||||||
|
|
||||||
.. _MySQL manual: https://dev.mysql.com/doc/refman/5.6/en/charset-database.html
|
.. _MySQL manual: https://dev.mysql.com/doc/refman/en/charset-database.html
|
||||||
.. _PostgreSQL manual: http://www.postgresql.org/docs/current/static/multibyte.html
|
.. _PostgreSQL manual: http://www.postgresql.org/docs/current/static/multibyte.html
|
||||||
.. _Oracle manual: https://docs.oracle.com/cd/E11882_01/server.112/e10729/toc.htm
|
.. _Oracle manual: https://docs.oracle.com/cd/E11882_01/server.112/e10729/toc.htm
|
||||||
.. _section 2: https://docs.oracle.com/cd/E11882_01/server.112/e10729/ch2charset.htm#NLSPG002
|
.. _section 2: https://docs.oracle.com/cd/E11882_01/server.112/e10729/ch2charset.htm#NLSPG002
|
||||||
|
|
|
@ -484,7 +484,7 @@ pytz_. If you're using MySQL, you must install pytz_ and load the time zone
|
||||||
tables with `mysql_tzinfo_to_sql`_.
|
tables with `mysql_tzinfo_to_sql`_.
|
||||||
|
|
||||||
.. _pytz: http://pytz.sourceforge.net/
|
.. _pytz: http://pytz.sourceforge.net/
|
||||||
.. _mysql_tzinfo_to_sql: https://dev.mysql.com/doc/refman/5.6/en/mysql-tzinfo-to-sql.html
|
.. _mysql_tzinfo_to_sql: https://dev.mysql.com/doc/refman/en/mysql-tzinfo-to-sql.html
|
||||||
|
|
||||||
Addition of ``QuerySet.datetimes()``
|
Addition of ``QuerySet.datetimes()``
|
||||||
------------------------------------
|
------------------------------------
|
||||||
|
|
|
@ -585,7 +585,7 @@ function in autocommit mode: statements will be executed and committed as soon
|
||||||
as they're called. If your MySQL setup *does* support transactions, Django
|
as they're called. If your MySQL setup *does* support transactions, Django
|
||||||
will handle transactions as explained in this document.
|
will handle transactions as explained in this document.
|
||||||
|
|
||||||
.. _information on MySQL transactions: https://dev.mysql.com/doc/refman/5.6/en/sql-syntax-transactions.html
|
.. _information on MySQL transactions: https://dev.mysql.com/doc/refman/en/sql-syntax-transactions.html
|
||||||
|
|
||||||
Handling exceptions within PostgreSQL transactions
|
Handling exceptions within PostgreSQL transactions
|
||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
|
|
Loading…
Reference in New Issue