Engine = create_engine("mysql+mysqldb://blah-blah-blah", encoding="utf-8")
Session = sessionmaker(bind = Engine)
ses = Session()
Meta = MetaData(bind = Engine, reflect = True)
PersonTable = Meta.tables["person"]
class Person(object):
pass
mapper(Person, PersonTable)
APerson = Person("1111", "2222", "1.01.1980")
ses.add(APerson)
ses.commit()sqlalchemy.exc.ProgrammingError:(ProgrammingError) (1064,“您的SQL语法中有一个错误;请查看与您的MySQL服务器版本相对应的手册,了解在第1行'%s,%s,%s)‘附近要使用的正确语法”)b’‘INSERT INTO person (Name,OriginalName,DoB)值(%s,%s,%s)’('1111','2222','25.01.1980')
什么是%s?我做错了什么?
Python 3.1 SQLAlchemy 0.6.5 MySQL 5.1 Windows7旗舰版
谢谢。
发布于 2010-11-19 00:01:07
您的sqlalchemy commit正在尝试发出与架构不兼容的插入查询。near '%s, %s, %s)'表示您正在尝试插入无效数据。我只能推测这是因为日期格式-这不是正确的mysql日期格式YYYY-MM-DD。
发布于 2010-11-22 16:03:15
我迁移回Python2.7。现在它工作得很好。
https://stackoverflow.com/questions/4215584
复制相似问题