2010-09-13 124 views
2

我创建了一个表(MySQL 5.1中)SQLAlchemy的Select语句 - SQL语法错误

from sqlalchemy import * 

def get(): 
    db = create_engine('mysql://user:[email protected]/database') 
    db.echo = True 
    metadata = MetaData(db) 

    feeds = Table('feeds', metadata, 
      Column('id', Integer, primary_key=True), 
      Column('title', String(100)), 
      Column('link', String(255)), 
      Column('description', String(255)), 
    ) 

    entries = Table('entries', metadata, 
      Column('id', Integer, primary_key=True), 
      Column('fid', Integer), 
      Column('url', String(255)), 
      Column('title', String(255)), 
      Column('content', String(5000)), 
      Column('date', DateTime), 
    ) 
    feeds.create() 
    entries.create() 

但是当我尝试进行查询:

from sqlalchemy import * 
db = create_engine('mysql://user:[email protected]/database') 
metadata = MetaData(db) 
feeds = Table('feeds', metadata) 
s = feeds.select() 
result = db.execute(s) 

我得到的结果的误差= DB .execute(S)线指示如下:

sqlalchemy.exc.ProgrammingError: (ProgrammingError) (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM feeds' at line 2") 'SELECT \nFROM feeds'() 

我显然新SQLAlchemy的,我不知道我做错了,尽管HAV在网络上搜索每一个教程并改变了这一百万次。任何帮助?

回答

0

您的feeds.select()调用中可能缺少某些东西,我会再看看此函数的API文档。