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, "Eğer SQL sözdizimi bir hata var; 'yakın kullanma hakkı sözdizimi için MySQL sunucu sürümü ile uyumlu kılavuzu % s,% s,% s) 'satır 1'de') b'INSERT INTO person (Name
, OriginalName
, DoB
) VALUES (% s,% s,% s) '(' 1111 ',' 2222 ', '25 .01 .1980 ')Python 3, SQLAlchemy, MySQL. INSERT deyiminde yanlış sözdizimi
% s nedir? Neyi yanlış yapıyorum?
Python 3.1 SQLAlchemy 0.6.5 MySQL 5.1 Windows 7 Ultimate
teşekkür ederiz.
, her bir% s'nin sırasıyla '1111', '222' ve '25 .01.1980 'dize değerleri için alması beklenen bir C stili yazdırma işidir. Bu –
düzeltmek yardımcı olmak için sqlalchemy bilmiyorum daha yakın olmasına rağmen burada benzer bir soru, umarım yararlı bir cevap olacaktır: http://stackoverflow.com/questions/14732533/pyramid-python3-sqlalchemy-and -mysql – Sheena