如何将非默认的SQLAlchemy类型设置为utf8_bin
,例如:
class User(sa.Model):
__tablename__ = 'user'
id = sa.Column(sqlalchemy_utils.UUIDType(binary=True), primary_key=True, default=uuid.uuid4())
name = sa.Column(sa.VARCHAR(100, collation='utf8_bin'))
当我尝试插入新用户时,收到错误消息:
Warning: (1300, "Invalid utf8 character string: '8FAE44'") rows += self.execute(sql + postfix)
我尝试使用?charset=utf8
连接到MySQL,但是它不起作用。我还发现了有关该错误的thread。
我的MySQL版本是mysql Ver 14.14 Distrib 5.7.21,适用于Linux(x86_64),使用EditLine包装器,Python 3.6.5,SQLAlchemy 1.2.15,SQLAlchemy Utils 0.33.10 ...