【python – 如何将列表绑定到sqlalchemy中自定义查询中的参数?】教程文章相关的互联网学习教程文章

python – Django注释的SQLAlchemy转换【代码】

我在Django模型管理器中有以下注释我想转换为SQLAlchemy ORM查询:annotations = {'review_count' : Count("cookbookreview", distinct=True), 'rating' : Avg("cookbookreview__rating")} return self.model.objects.annotate(**annotations)我基本上需要的是查询中的每个模型对象都将review_count和rating作为初始查询的一部分附加到它们.我相信我可以使用column_property,但是我想避免在对象上使用这种类型的“计算属性”,因为当...

Python Pyramid SQLAlchemy,MySQL服务器已经消失【代码】

我已准备好很多关于这个问题的帖子.我的理解是应用程序有一个设置,说明在丢弃数据库连接并创建新数据库连接之前保持多长时间. MySQL有一个设置,说明保持空闲连接的时间.没有站点活动后,MySQL会超时应用程序的连接.但应用程序不知道这一点,仍然尝试使用现有的连接,但失败了.失败后,应用程序断开连接并创建一个新连接,然后就可以了. 我在本地mysql服务器上将wait_timeout设置为10秒.我在本地运行的应用程序上将pool_recycle设置为5秒...

python – SQLAlchemy:知道模型对象的字段名称和值?【代码】

我正在尝试保持SOLID面向对象的编程原则,保持DRY等,但我对Python / SQLAlchemy / Pyramid的新见感正在变得非常困难. 我正在尝试将我现在所知道的SQLAlchemy模型用于创建一个简单的Pyramid Framework对象并使用我所知道的C#中的“反射”,它可能在Python中被称为不同的东西(Introspection?不确定为这只是我在python的第二周,但我在其他语言(C/C++ / C#,Java等)方面有很多经验,所以麻烦似乎是将我的知识映射到python的词汇表,抱歉),找...

python – SQLAlchemy:使单个对象加入多个表【代码】

DB – SQLAlchemy设置 考虑两个表的经典设置 – user和api_key,由SQLAlchemy对象表示为:class User(Base):__tablename__ = 'user'user_id = Column(String)user_name = Column(String)vioozer_api_key = Column(String, ForeignKey("api_key.api_key"))class ApiKey(Base):__tablename__ = 'api_key' api_key = Column(String(37), primary_key=True)为清楚起见省略了其他字段 我的查询 假设我想获取特定用户ID的用户名和ap...

python – SqlAlchemy中通过关联对象的多对多,自引用,非对称关系(推特模型)【代码】

如何在SqlAlchemy中最好地实现多对多,自我指涉,非对称的关系(想想Twitter)?我想使用一个关联对象(让我们称这个类为“Follow”),这样我就可以拥有与该关系相关的其他属性. 我已经看到很多使用关联表的例子,但没有像我上面描述的那样.这是我到目前为止所拥有的:class UserProfile(Base):__tablename__ = 'user'id = Column(Integer, primary_key=True)full_name = Column(Unicode(80))gender = Column(Enum(u'M',u'F','D', name='g...

python – SQLAlchemy引用表名 – 无法重新定义’quote’或’quote_schema’参数【代码】

从sqlalchemy 0.8升级到1.0.4时,我的ORM因错误而破坏无法重新定义’quote’或’quote_schema’参数 我连接到sybase数据库,并使用declarative_baseBase = declarative_base()使用标准方法创建下面的映射class RiskAggregationGroup(Base):__tablename__ = 'RISK_AGGREGATION_GROUP'__table_args__ = {'quote':False,'extend_existing':True}id = Column(Integer, name='id_risk_agg', primary_key=True)name = Column(String(50), n...

python – Flask-Sqlalchemy:数据库查询不返回新数据【代码】

我正在构建一个从一个服务接收webhooks的应用程序,将数据存储在数据库中,然后通过API提供数据. 我能够成功地将数据添加到我的应用程序,但是当我查询数据库时,我只收到上次启动应用程序时数据库中的第一次提交. 例如,如果我在启动应用程序时在Orders表中有26个订单,然后触发webhook,Order.query.all()将返回27个订单,直到我重新启动应用程序,无论表中实际有多少订单(我可以使用MySQL验证). 以下是用于将数据插入表中的类的示例:@we...

python – 在SQLAlchemy中使用SSL【代码】

我最近改变了我的项目使用SQLAlchemy并且我的项目运行正常,它使用了外部MySQL服务器. 现在我正在尝试使用具有SSL CA的不同MySQL服务器,并且它不会连接. (它确实使用MySQL Workbench进行连接,因此证书应该没问题) 我正在使用以下代码:ssl_args = {'ssl': {'ca': ca_path}} engine = create_engine("mysql+pymysql://<user>:<pass>@<addr>/<schema>",connect_args=ssl_args)我收到以下错误:Can’t connect to MySQL server on ‘\a...

python – 使用PyQt4 – QTableView与SQLAlchemy使用QSqlTableModel(或不)【代码】

我开始学习Qt for python,因为我在阅读这篇文章后感到奇怪:qt – pyqt QTableView not populating when changing databases.如果有办法使用SQLAlchemy会话而不是(重新)使用Qt的QTableView小部件打开数据库连接作为表模型. 有点像这样的东西:databasePath = "base.sqlite" # used for productionengine = create_engine('sqlite:///' + databasePath, echo=True)# initializing session : Session = sessionmaker(bind=engine) se...

使用外键映射使用Python和SQLAlchemy从另一个表中获取数据【代码】

嗯,标题比我想象的更难制定. 基本上,我使用SQLAlchemy将这些简单的类映射到表.我知道他们缺少一些项目,但这些并不是突出问题所必需的.class Customer(object):def __init__(self, uid, name, email):self.uid = uidself.name = nameself.email = emaildef __repr__(self):return str(self)def __str__(self):return "Cust: %s, Name: %s (Email: %s)" %(self.uid, self.name, self.email) 以上基本上是一个简单的客户,其ID,姓名和...

python – 在SqlAlchemy中反映db时缺少外键关系【代码】

我试图使用SqlAlchemy(0.5.8)以声明方式和使用反射来与遗留数据库进行交互.我的测试代码如下所示:from sqlalchemy import * from sqlalchemy.orm import create_session from sqlalchemy.ext.declarative import declarative_baseBase = declarative_base() engine = create_engine('oracle://schemaname:pwd@SID') meta = MetaData(bind=engine)class CONSTRUCT(Base):__table__ = Table('CONSTRUCT', meta, autoload=True)class...

如何使用Python从Sybase数据库执行SQLAlchemy中的表反射/内省?

一些有用的stackoverflow用户pointed out即neither the pyodbc nor python-sybase plugins support Sybase table reflection within SQLAlchemy. 所以,我的问题是:是否存在反映Sybase部署中表的数据库元数据的替代方法?或者,如果那是不可能的,有没有一种巧妙的方法来修补和/或破解解决方案以下拉表格元数据以进行解析和查询构建?解决方法:这一切都归结为调用数据库提供的信息模式,数据库是一组可以从中选择的表和/或视图,然后返...

python – 如何使用SQLAlchemy声明来创建复合列?【代码】

我经常使用包含Markdown格式的richtext的Text列创建模型.我的模型看起来像这样:class Document(Base):id = Column(Integer, primary_key=True)title = Column(Unicode(250))description = Column(Text)description_html = Column(Text) 我的编辑表单(a)读取和写入描述,然后(b)将Markdown格式化版本写入description_html.我的(Jinja2)视图模板(c)使用{{doc.description_html | safe}}加载HTML版本. 我想将这三个重复操作减少为一...

python – 在sqlalchemy中刷新分离的实体【代码】

我需要将一个对象附加到会话,使其与db中持久化的对象不同. (更容易用代码解释):session.query(type(some_object)).filter_by(id=some_object.id).one()有更合适的方法吗?session.add(some_object)不起作用,因为具有此类id的实体已经可以附加到此会话,并且object = session.merge(some_object)对我不起作用,因为它将状态从分离的副本转换(如果我使用object.name =’asdfasdf’这些更改将在合并对象后挂起) 编辑: 我找到了一点不那...

python – 在SQLAlchemy中按对象过滤【代码】

我有一个声明的模型,表中存储了一个对象的“原始”路径标识符.然后我有一个@hybrid_property,它允许直接获取和设置由该字段标识的对象(这不是另一个声明性模型).有没有办法直接在这个高级别查询? 我可以做这个:session.query(Member).filter_by(program_raw=my_program.raw)我希望能够这样做:session.query(Member).filter_by(program=my_program)其中my_program.raw ==“path / to / a / program” 成员有一个字段program_raw和...