diff --git a/lib/mysql/connector/conversion.py b/lib/mysql/connector/conversion.py index d94e9e99..7a888fe2 100644 --- a/lib/mysql/connector/conversion.py +++ b/lib/mysql/connector/conversion.py @@ -169,6 +169,8 @@ def quote(self, buf): return str(buf).encode('ascii') elif isinstance(buf, type(None)): return bytearray(b"NULL") + elif not PY2 and isinstance(buf, (bytes, bytearray)): + return bytearray(b"_binary'" + buf + b"'") else: return bytearray(b"'" + buf + b"'") diff --git a/src/mysql_capi.c b/src/mysql_capi.c index ea1fe3fd..2574bbe8 100644 --- a/src/mysql_capi.c +++ b/src/mysql_capi.c @@ -1778,7 +1778,7 @@ MySQL_convert_to_mysql(MySQL *self, PyObject *args) } else if (PyBytes_Check(new_value)) { - quoted= PyBytes_FromFormat("'%s'", PyBytes_AsString(new_value)); + quoted= PyBytes_FromFormat("_binary'%s'", PyBytes_AsString(new_value)); PyTuple_SET_ITEM(prepared, i, quoted); #endif }