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')Python 3,SQLAlchemy,MySQL。在INSERT语句的语法不正确
什么是%s?我错了什么?
的Python 3.1 SQLAlchemy的0.6.5 MySQL 5.1中 Windows 7旗舰版
谢谢。
它是一个C风格的打印事物,其中每个%s分别代表字符串值“1111”,“222”和“25 .01.1980”。我不知道sqlalchemy为了帮助你解决这个问题 – 2010-11-18 14:11:03
这里是一个类似的问题,尽管更近期,希望它会有一个有用的答案:http://stackoverflow.com/questions/14732533/pyramid-python3-sqlalchemy-and -mysql – Sheena 2013-02-06 16:33:08