如何在 sqlalchemy 表达式语言中设置 DEFERRED 约束?

2023-12-09

我有一个表,我们称之为 table_A,它有一个引用 table_B 的外键。 Table_B 还有一个引用 table_A 的外键。要为 table_A 插入一条记录,我必须将外键约束配置为最初延迟。我试图首先创建table_A,第二次创建table_B,输入table_A的pk,最后将table_B的pk输入table_A。

我正在使用 sqlalchemy 表达式语言(不是 orm),并且在将约束设置为延迟时遇到问题。我尝试简单地通过引擎的连接手动设置它,但它不起作用。我确实在 table_A 上设置了声明为 DEFERRABLE INITIALLY DEFERRED 的外键。在交易开始时,我有:

connection.execute("begin")
connection.execute("set constraints deferred")

然而,引用 table_B 的 table_A 上的 fk 约束仍然受到违反。我尝试查看表、连接和事务类,但没有找到任何明确推迟事务约束的内容。我正在使用 Postgresql;任何帮助将非常感激。


感谢@a_horse_with_no_name 的建议,但列上仍然留有 NOT NULL 约束,并且“NOT NULL”约束不可推迟。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 sqlalchemy 表达式语言中设置 DEFERRED 约束? 的相关文章

  • 是否可以在MySQL UDF中的IF条件中声明游标

    我可以在 if 语句中声明游标吗 如果可能的话我怎样才能做到 因为我刚刚做了这样的光标 CREATE FUNCTION fn test ProductID BIGINT 20 RETURNS DECIMAL 10 2 BEGIN DECLA
  • 节点 PostgreSQL 客户端查询超时

    我正在使用节点包pg对于 postgres here https github com brianc node postgres npm i pg var pg require pg 我正在查询一个不属于我的大型集群 在某些条件下可能会失败
  • sqlalchemy 中的随机 ID(pylon)

    我正在使用 pylons 和 sqlalchemy 我想知道如何将一些随机 id 作为primary key 最好的方法是使用随机生成的 UUID import uuid id uuid uuid4 uuid 数据类型在某些数据库中本机可用
  • 通过网络恢复数据库备份

    如何通过网络使用 SQL Server 2005 恢复数据库备份 我记得以前这样做过 但这样做的方式有些奇怪 您几乎没有选择使用网络文件作为备份源 在与 MS SQL Server 相同的用户下映射网络驱动器 路径 托管文件 使用 xp c
  • 是否可以将 mongodb 与 sqlalchemy 一起使用?

    我在中找不到任何有关连接 mongodb 的信息sqlalchemy 的文档 http docs sqlalchemy org en latest 和谷歌搜索 是否可以将 mongodb 与 sqlalchemy 一起使用 谢谢 根据 sq
  • 每次都在django查询数据库中过滤查询集吗?

    想象一下我有以下代码 qs Users objects all list for i in range 10 list append qs filter age i 这里过滤器被调用 10 次 它是连接到数据库 10 次还是第一次使用过滤器
  • Postgres 上的 C 语言环境和 Posix 语言环境有什么区别?

    我知道 Postgres 上的数据库区域设置负责国家字符的正确顺序 正确的小写 大写等 但为什么有两种语言中立的语言环境 posix and c 它们之间有什么区别 还是只是一个中立的语言环境有两个不同的名称 UPDATE正如 Magnus
  • 使用sqlbulkcopy之前如何创建表

    我有一个 DBF 文件 我正在尝试导入该文件 然后将其写入 SQL 表 我遇到的问题是 如果我使用 SqlBulkCopy 它需要我提前创建表 但在我的场景中这是不可能的 因为 dbf 文件不断变化 到目前为止 这是我的代码 public
  • 如何将变量设置为触发器 MYSQL 内存储过程的结果?

    我这里有一个小问题 我正在为我的数据库工作创建一个触发器 但我不知道如何在触发器内使用存储过程 我想将过程的结果保存在变量中 然后使用稍后在 IF 比较器上变量 这是我的代码 DELIMITER CREATE TRIGGER insert
  • 关于 Cassandra 与 MySQL 的一些建议

    几天前我在这里问了一个问题 得到了一些非常好的答案 我正在考虑做一个带有个人资料 个人简介等的facebook风格的网站 并询问我是否应该使用mysql 答案是使用Cassandra 因为好多了 我只是问这是每个人都会建议的 只是我对mys
  • 从复选框列表中选择循环生成的复选框中的一个复选框

    抱歉我的英语不好 在我的 ASP NET 网站上 我从 SQL 表导入软件列表 看起来像这样 但实际上要长得多 Microsoft Application Error Reporting br br Microsoft Applicatio
  • Hector 和 Cassandra 问题 NoSuchFieldError:DEFAULT_MEMTABLE_THROUGHPUT_IN_MB

    我正在通过 Hector 测试与 Cassandra 数据库的连接 但是当我运行 Junit 测试时 我不断收到以下消息 java lang NoSuchFieldError DEFAULT MEMTABLE THROUGHPUT IN M
  • 如何找到 Oracle 数据库的 URL?

    如何找到 Oracle 数据库的 URL 和端口 Example jdbc oracle thin host port dbName 用户名 密码 是否有我可以查看的 SQL 命令或日志 配置文件 对于甲骨文来说 有一个tnsnames o
  • CAP 定理 - 可用性和分区容错性

    当我尝试理解CAP中的 可用性 A 和 分区容错性 P 时 我发现很难理解各种文章的解释 我感觉A和P可以在一起 我知道事实并非如此 这就是为什么我无法理解 简单解释一下 A和P是什么以及它们之间的区别 一致性意味着整个集群中的数据是相同的
  • 从多个表中选择 - 一对多关系

    我有这样的表 表产品 身份证 姓名 表格图像 产品 ID 网址 订单号 表价 产品 ID 组合 货币 价格 表数量 产品 ID 组合 数量 表 Product 与其他表是一对多关系 我需要查询表并得到类似这样的结果 伪数组 ProductI
  • 为什么 sql 字段名称中不应该包含逗号?

    人们一直告诉我列名中不应包含空格 我只是想知道 这是为什么 这是我为学校创建的一些数据库表遇到的问题 字段名称包括 Preble 和 Darke 相反 它们需要是 普雷布尔县 俄亥俄州 和 达克县 俄亥俄州 如果它们是行名称 我只需创建一个
  • 数据库字段的标准长度列表

    我正在设计一个数据库表并问自己这个问题 名字字段应该有多长 有人有最常见字段 例如名字 姓氏和电子邮件地址 的合理长度列表吗 我刚刚查询了我的数据库 其中包含美国数百万客户 最大值名长度是 46 我选择 50 当然 其中只有 500 个超过
  • 即使将“enable_seqscan”设置为关闭后,也未使用数组列上的 GIN 索引?

    根据推荐this https stackoverflow com questions 4058731 can postgresql index array columns comment10357041 4059785评论 我建立了一个 i
  • 非规范化如何提高数据库性能?

    我听说过很多关于非规范化的内容 它是为了提高某些应用程序的性能而进行的 但我从来没有尝试过做任何相关的事情 所以 我只是好奇 规范化数据库中的哪些地方会使性能变差 或者换句话说 非规范化原则是什么 如果我需要提高性能 如何使用此技术 非规范
  • Slick 中的 Scala 枚举(案例对象),良好实践

    假设我有一个代表一组几个有效状态的特征 将对象存储在数据库中是一个好习惯吗 存储 Int 并使用隐式函数 MappedColumnType base Int DoorState 将它们映射到 DoorState 会更好吗 trait Doo

随机推荐

  • 正则表达式帮助,贪婪与非贪婪

    嘿 我有一个很大的 html 字符串 比如 a style background none href swatch4 a a style background none a
  • 如何在不更改视图模型的属性 getter 的情况下格式化 XAML 中的字符串?

    我的应用程序中有以下界面 public interface IContactMedium string ContactString get set string Type get set bool IsValid 该接口适用于代表某人某种联
  • 将目录添加到 $LOAD_PATH (Ruby)

    我见过两种常用的技术 用于将当前正在执行的文件的目录添加到 LOAD PATH 或 我看到了这样做的好处 以防您不使用 gem 显然 其中一个似乎比另一个更冗长 但是有理由选择其中一个而不是另一个吗 第一种冗长的方法 可能有点矫枉过正 LO
  • WEKA & MySQL 设置连接

    WEKA Explorer 无法打开与 MySQL 的连接 连接到 jdbc mysql MYSERVER 3306 NAME true 顺便说一句 mysql驱动程序已下载 mysql connector java 5 1 14 bin
  • 为什么使用 python split 时字符串会发生变化?

    test str Question The cryptocurrency Bitcoin Cash BCH USD settled at 1368 USD at 07 00 AM UTC at the Bitfinex exchange o
  • 简单java程序中的意外结果

    我是java新手 我的问题是按下一个键后输出显示2个数字 我不明白为什么 这是代码 class ForTest public static void main String args throws java io IOException i
  • 使用 zend-decorator 格式化表列中的 Zend_Form_Element_Radio 和行中的其他 Zend Form 元素

    我想用装饰者将以下 Zend Form 格式化为表格 将描述放在第一列中and第二列中的 Zend Form Element Radio 选项and add 2 select正如您在后面的 html 示例中看到的那样 在每一行中 我需要一个
  • 如何在C++中将文件编码格式设置为UTF8

    我的软件的要求是包含导出数据的文件的编码应为 UTF8 但是当我将数据写入文件时 编码始终是 ANSI 我使用 Notepad 来检查这一点 我目前正在做的是尝试通过读取文件来手动转换文件 将其转换为 UTF8 并将文本写入新文件 line
  • Java ServletContext

    我有一个 JSP 网站 而不是 Spring MVC 它有一个配置文件 web xml 我想要获取 web xml 文件中的一些设置 但是 我想从 源包 文件夹中的类中访问这些设置 我知道我可以将 ServletContext 从 JSP
  • 验证空手道框架中的浮点值范围

    我的场景是检查字段是否接受 0 01 到 25000 的范围 它可以是十进制值 在空手道框架中执行此操作的方法是什么 我使用了下面的正则表达式 这是不正确的 正则表达式 0 9 只需乘以 1 即可将字符串转换为数字 def foo 0 2
  • 在 R 中工作时分离所有包

    在努力解决另一个问题时 我遇到了这个问题 我可以通过以下方式删除所有 R 对象 rm list ls all TRUE 是否有等效的命令可以在工作会话期间分离已安装的软件包 gt sessionInfo R version 2 12 2 2
  • 无法添加 DLL 引用到 VS 2008

    我想知道是否有人可以帮助我 我正在尝试在 VB Net 3 5 应用程序中添加对 LAME MP3 编码器的引用 我使用的 DLL lame enc dll v3 98 2 是从这里下载的 http rarewares org mp3 la
  • 如何对后续行进行分组(基于标准)然后对它们进行计数 [MySQL]?

    假设我有这样一个表 按日期排序 id name type date 1 A 1 01 08 2012 2 A 2 01 08 2012 3 B 1 02 09 2012 4 A 1 01 10 2012 5 A 4 01 10 2012 6
  • 卸载并再次安装应用程序时,Firebase 身份验证返回特定用户

    我有一个问题 我在我的应用程序中使用 google 登录 Firebase 假设有3个用户X Y and Z我曾与谁一起登录我的应用程序 我用于检查用户是否登录的代码 FirebaseAuth mAuth FirebaseAuth getI
  • Foundation 均衡器插头 + BS 3.2?

    尝试使用均衡器插件 但 id 不起作用 并且没有错误 它看起来像http goo gl OvKy1g 这是一个页面http goo gl INMqUL 我需要为其添加一些 css 吗 您可以将 Foundation Equalize 插件与
  • 如何使用 SQL 参数

    我正在尝试为我正在制作的一个简单游戏创建一个数据库 但在查询玩家统计数据时遇到问题 至此数据库可以进行搜索和更新 但是只有修改实际代码才能改变搜索词 到目前为止的整个代码 对任何缩进错误表示歉意 Importing modules impo
  • NHibernate 和拦截器 - 测量/监控 SQL 往返时间

    为了获得缓慢或潜在缓慢区域的早期警告 我希望有一个 NHibernate 拦截器 它可以充当性能监视器 以便任何花费超过给定时间的数据库操作都会引发一个事件并且 重要的是 应用程序日志中的完整堆栈跟踪 拦截器似乎是了解这一点的一个很好的窗口
  • 在多个字符串中查找完全相同的字符串

    下面的例子 我有一个像这样的数组 Array 0 gt vlakke lasflenzen PN6 1 gt vlakke lasflenzen PN10 2 gt vlakke lasflenzen PN16 3 gt vlakke la
  • LLVM 将 pthread 函数调用插入到 IR 中

    我正在写一个 LLVM 通行证 它是LoopPass 需要将 pthread create 和 pthread join 等 pthread 函数调用插入到 IR 中 我知道如何创建函数调用并将其插入到 IR 中 但我无法获取 pthrea
  • 如何在 sqlalchemy 表达式语言中设置 DEFERRED 约束?

    我有一个表 我们称之为 table A 它有一个引用 table B 的外键 Table B 还有一个引用 table A 的外键 要为 table A 插入一条记录 我必须将外键约束配置为最初延迟 我试图首先创建table A 第二次创建