我有Python 3.6,pymysql 0.7.11和sqlalchemy 1.2.4
我在使用sqlalchemy创建引擎时遇到问题。
当我尝试时(凭据更改为隐私,除了“:3306”作为端口和encd变量):
import pymysql
import sqlalchemy
login = ‘username’
passwd = ‘password’
server = '1.1.1.1:3306'
db = 'db_name'
encd = 'charset=utf8'
engine_str = 'mysql+pymysql://{}:{}@{}/{}?{}'.format(login, passwd, server, db, encd)
engine = sqlalchemy.create_engine(engine_str)
我明白了:
AttributeError: module 'sqlalchemy.sql.sqltypes' has no attribute 'NativeForEmulated'
请注意,我也试过没有端口:3306并且有同样的错误。
此时发生错误,而不是在连接引擎或使用连接时。
当我使用相同的凭据使用mypysql创建引擎时,它可以正常工作:
engine = pymysql.connect(user=login, password=passwd,
host='1.1.1.1',
database=db, port=‘3306’)
但我需要sqlalchemy来完成这个项目。
我没有找到任何搜索此错误消息的内容。我尝试在不同的计算机上运行完全相同的代码,它工作正常。有没有人有任何见解?