问题标签 [sqlsoup]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - SQLAlchemy 在插入时在其他列中使用 ID(甚至可能使用 sqlsoup)
给定一个tasks
带有列的模型id: int (primary_key), file_path: string
,使用 SQLAlchemy,我想在一个事务中执行以下操作:
请注意,我需要先 commit() 才能访问task.id
,因此需要两次提交。
这是否可能,或者通过使用某种 lambda,或者通过在Task
模型中编写 setter 函数/插入回调?
我正在使用 PostgreSQL 作为后端,并且知道如何使用数据库中的触发器来做到这一点。我正在寻找一种比 pl/pgsql 解决方案更 Pythonic 的方式。
如果您碰巧知道使用 SQLSoup 的答案,我也将非常感谢。为了完整起见,前两行的 SQLSoup 等效项为task = db.tasks.insert()
,其他 3 行保持不变。
python - SQLAlchemy / SQLSoup 在 MySQL 中看不到临时表
我继承了一个 SQLQlchemy / SQLSoup 应用程序,需要使其扩展 20 倍。
一个查询进行得很慢,所以我对其进行了重构。由于 MySQL 在嵌套子查询/派生表上的性能不佳,我将其拆分为两个临时表并加入它们。
现在我正在尝试将 SQL 添加到代码中,但是当我尝试访问临时表时,我收到一条错误消息,指出该表不存在。
现在我得到错误:
我认为这是因为会话正在关闭并在查询之间重新操作,或者类似的事情。
数据库连接如下。
(SQLSOUP_DB 是 db.execute 中使用的数据库)。
我需要做些什么来保持会话打开,以便我仍然可以使用临时表。还是可能是其他原因导致此问题?