summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/dialects/mysql/mysqldb.py
diff options
context:
space:
mode:
authorThomas Grainger <tom@yplanapp.com>2015-03-18 11:40:03 +0000
committerThomas Grainger <tom@yplanapp.com>2015-03-18 11:47:17 +0000
commit6e8ecd161bfb95b39713ba406921fb277b2802a3 (patch)
tree659acb2b5a7590b992130332e0df22c7553ffb6c /lib/sqlalchemy/dialects/mysql/mysqldb.py
parent5794b777cbb4a8f951ee19ac40c7aef0e2f429a1 (diff)
downloadsqlalchemy-6e8ecd161bfb95b39713ba406921fb277b2802a3.tar.gz
add utf8mb4 recommendation
Diffstat (limited to 'lib/sqlalchemy/dialects/mysql/mysqldb.py')
-rw-r--r--lib/sqlalchemy/dialects/mysql/mysqldb.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/sqlalchemy/dialects/mysql/mysqldb.py b/lib/sqlalchemy/dialects/mysql/mysqldb.py
index 0d125a245..a65f69622 100644
--- a/lib/sqlalchemy/dialects/mysql/mysqldb.py
+++ b/lib/sqlalchemy/dialects/mysql/mysqldb.py
@@ -28,6 +28,18 @@ unicode** will include both charset and use_unicode=0::
create_engine("mysql+mysqldb://user:pass@host/dbname?charset=utf8&use_unicode=0")
+For MySQL versions 5.5.3 and MySQLdb version 1.2.3 forward, the special
+MySQL-specific encoding 'utf8mb4' is now recommended::
+
+ create_engine("mysql+mysqldb://user:pass@host/dbname?charset=utf8mb4&use_unicode=0")
+
+The 'utf8' encoding may still be used, however MySQL will only support
+unicode characters within the first three of four possible bytes:
+no (&#128169; or &#128571;) note that in order to use utf8mb4 fully, changes to
+the MySQL schema and/or server configuration may be required.
+See also: `The utf8mb4 character set
+<http://dev.mysql.com/doc/refman/5.5/en/charset-unicode-utf8mb4.html>_`.
+
As of this writing, MySQLdb only runs on Python 2. It is not known how
MySQLdb behaves on Python 3 as far as unicode decoding.