相关疑难解决方法(0)

选择sqlalchemy中的

我想做这样的事情:

select username, userid, 'user' as new_column  from  users_table.
Run Code Online (Sandbox Code Playgroud)

可以使用sqlalchemy选择表的列,如下所示:

query = select([users_table.c.username, users_table.c.userid])
Run Code Online (Sandbox Code Playgroud)

我该怎么做选择xcol_x在SQLAlchemy的查询?

python sqlalchemy

22
推荐指数
3
解决办法
2万
查看次数

SQLAlchemy:从表名中获取Model.就我所见,这可能意味着将一些函数附加到元类构造函数

我想创建一个函数,给定表的名称,返回具有该名的模型.例如:

class Model(Base):
    __tablename__ = 'table'
    ...a bunch of Columns

def getModelFromTableName(tablename):
   ...something magical
Run Code Online (Sandbox Code Playgroud)

所以getModelFromTableName('table')应该返回Model类.

我的目标是在我正在制作的简单表单生成器中使用该函数,因为FormAlchemy不能与python3.2一起工作,我希望它能很好地处理外键.

任何人都可以给我任何关于如何让getModelFromTableName工作的指针吗?

这是我的一个想法(可能完全错误,我之前没有使用过meta类)

如果我要使我的Model类继承自Base以及其他一些类(TableReg)并具有TableReg商店Model的类meta,该怎么办?tablename在某些全局字典或Singleton中.

我意识到这可能是完全关闭的,因为Base的元类做了一些非常重要且非常好的东西,我不想打破,但我认为必须有一种方法让我在元类中附加一些构造函数代码我的模特 或者我不明白.

sqlalchemy foreign-keys python-3.x

18
推荐指数
5
解决办法
1万
查看次数

使用SQLAlchemy查询到pandas df时的SAWarning

我正在将我的SQLAlchemy映射的星型模式直接查询到a,pandas DataFrame并且从pandas我想要解决的问题中得到一个恼人的SAWarning .这是一个简化版本.

class School(Base):
__tablename__ = 'DimSchool'

id = Column('SchoolKey', Integer, primary_key=True)
name = Column('SchoolName', String)
district = Column('SchoolDistrict', String)


class StudentScore(Base):
__tablename__ = 'FactStudentScore'

StudentKey = Column('StudentKey', Integer,    ForeignKey('DimStudent.StudentKey'), primary_key = True)
SchoolKey = Column('SchoolKey', Integer, ForeignKey('DimSchool.SchoolKey'), primary_key = True)
PointsPossible = Column('PointsPossible', Integer)
PointsReceived = Column('PointsReceived', Integer)

student = relationship("Student", backref='studentscore')
school = relationship("School", backref='studentscore')
Run Code Online (Sandbox Code Playgroud)

我用这样的语句查询日期:

standard = session.query(StudentdScore, School).\
join(School).filter(School.name.like('%Dever%'))

testdf = pd.read_sql(sch.statement, sch.session.bind)   
Run Code Online (Sandbox Code Playgroud)

然后得到这个警告:

SAWarning: Column 'SchoolKey' on table <sqlalchemy.sql.selectable.Select at …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy pandas

4
推荐指数
1
解决办法
2580
查看次数

标签 统计

sqlalchemy ×3

python ×2

foreign-keys ×1

pandas ×1

python-3.x ×1