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