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服务器版本对应的手册,以便在'%s,%s,%附近使用正确的语法s)'第1行')b'INSERT INTO person(Name
,OriginalName
,DoB
)VALUES(%s,%s,%s)'('1111',' 2222','25 .01.1980')
%s是多少?我错了什么?
Python 3.1 SQLAlchemy 0.6.5 MySQL 5.1 Windows 7旗舰版
谢谢。
答案 0 :(得分:0)
您sqlalchemy commit正在尝试发出与架构不兼容的插入查询。 near '%s, %s, %s)'
表示您尝试插入无效数据。我只能推测它是因为日期格式 - 这不是正确的mysql日期格式YYYY-MM-DD
。
答案 1 :(得分:0)
我迁移回Python 2.7。现在它工作正常。