sqlalchemy mysql配置中怎么设置utf8

发布时间:2024-11-20 15:12

空调噪音大怎么办?调整安装位置和设置 #生活技巧# #居家生活技巧# #电器维修技巧# #空调使用技巧#

使用Python 2.7和sqlAlchemy 0.7,我使用以下命令连接到MysqL DB:

engine = create_engine('MysqL://username:password@host/dbname?charset=utf8',echo=False)

根据sqlAlchemy文档,设置charset = utf8会自动隐含use_unicode = 1,因此所有字符串都应该以unicode形式返回. http://docs.sqlalchemy.org/en/rel_0_7/dialects/mysql.html具体给出了例子

#set client encoding to utf8; all strings come back as unicode

create_engine(‘MysqL+MysqLdb:///mydb?charset=utf8’)

那么,为什么当我在映射类中查询文本字段时,该字段最终是否为“str”类型?

Base = declarative_base(engine)

class RegionTranslation(Base):

''''''

__tablename__ = 'RegionTranslation'

__table_args__ = {'autoload':True}

def __init__(self,region_id,lang_id,name):

self.region_id = region_id

self.lang_id = lang_id

self.name = name

rtrans = session.query(RegionTranslation).filter_by(region_id = 1,lang_id = 6).one()

print (type(rtrans.name))

如果我只是接受这个并在使用之前对字符串进行解码,那么事情就好了.但我不明白为什么上面的代码没有返回类型’unicode’.有人可以请解释一下吗?

网址:sqlalchemy mysql配置中怎么设置utf8 https://www.yuejiaxmz.com/news/view/155999

相关内容

初入python,尝试获得A股交易数据(5)——利用tushare获取A股数据并尝试存入mysql(续)
创建表时附带的ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE = utf8
mysql导入数据库时出现40101错误解决方法
MySql错误:mysqld: Can't create directory '/usr/local/mysql/data/
在linux上运行mysql客户端时报错unknown variable 'basedir=/usr/local/mysql
windows cmd 执行sql文件ERROR 1064 (42000):You have an error in your SQL syn报语法错误解决办法
基于微信小程序的智慧生活助手系统设计与实现(源码+lw+部署+讲解)
路由器5g怎么设置
配置基础信息配置设备面板
电信光猫怎么设置

随便看看