如何使用 sqlalchemy IntegrityError 查找有问题的属性

2024-03-25

我有一个非常简单的 SqlAlchemy 模型

class User(Base):
    """ The SQLAlchemy declarative model class for a User object. """
    __tablename__ = 'users'
    id = Column(Integer, primary_key=True)
    phone = Column(String, unique=True)
    email = Column(String, unique=True)

当插入一个新用户时,IntegrityError如果电子邮件或电话重复,则可能会发生这种情况。

有什么方法可以检测哪一列违反了完整性错误?或者是进行单独查询以查看或存在值的唯一方法?


您可以使用以下方式获取底层代码、消息,并相应地格式化消息。

except exc.IntegrityError as e:
       errorInfo = e.orig.args
       print(errorInfo[0])  #This will give you error code
       print(errorInfo[1])  #This will give you error message

顺便说一句,你必须从 sqlalchemy 导入 exc:from sqlalchemy import exc如果您需要任何其他信息,请告诉我。我可以尝试一下。

有关 sqlalchemy exc 的更多信息,请查找代码:https://github.com/zzzeek/sqlalchemy/blob/master/lib/sqlalchemy/exc.py https://github.com/zzzeek/sqlalchemy/blob/master/lib/sqlalchemy/exc.py

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

如何使用 sqlalchemy IntegrityError 查找有问题的属性 的相关文章

  • ipdb 和 pdb++ 之间的区别?

    Python 有一个名为 pdb 的默认调试器 但社区创建了一些替代品 其中两个是ipdb https github com gotcha ipdb and pdb https github com pdbpp pdbpp 它们似乎迎合了相
  • Celery计划任务中的打印语句不会出现在终端中

    当我跑步时celery A tasks2 celery worker B我想看到每秒打印 芹菜任务 目前没有打印任何内容 为什么这不起作用 from app import app from celery import Celery from
  • 我怎样才能在python cgi中找到上传的文件名

    我制作了如下简单的网络服务器 import BaseHTTPServer os cgi import cgitb cgitb enable html
  • 使用信号时出现 django TransactionManagementError

    我有一个与 django 的用户和 UserInfo 一对一的字段 我想订阅用户模型上的 post save 回调函数 以便我也可以保存 UserInfo receiver post save sender User def saveUse
  • 创建一个打开文件并创建字典的函数

    我有一个正在处理的文件 我想创建一个读取文件并将内容放入字典中的函数 然后该字典需要通过 main 函数传递 这是主程序 它无法改变 我所做的一切都必须与主程序配合 def main sunspot dict file str raw in
  • 有条件填写 pandas 数据框

    我有一个数据框df列中包含浮点值A 我想添加另一列B这样 B 0 A 0 for i gt 0 B i if np isnan A i then A i else Step3 B i if abs B i 1 A i B i 1 lt 0
  • 通过鼻子测试检查某个函数是否发出警告

    我正在使用编写单元测试nose http somethingaboutorange com mrl projects nose 0 11 2 我想检查函数是否引发警告 该函数使用warnings warn 这是很容易就能做到的事情吗 def
  • 向 Python 2.6 添加 SSL 支持

    我尝试使用sslPython 2 6 中的模块 但我被告知它不可用 安装OpenSSL后 我重新编译2 6 但问题仍然存在 有什么建议么 您安装了 OpenSSL 开发库吗 我必须安装openssl devel例如 在 CentOS 上 在
  • 如何使用 python 操作系统更改驱动器?

    我正在尝试更改当前目录C to Y 我试过 import os os chdir Y 但我不断收到错误消息 提示无法找到驱动器 本质上我正在寻找相当于 cd d cmd 中的命令 你确定吗Y 确实是有效的驱动器号吗 Try os chdir
  • 如何使用 jira-python 设置 fixVersions 字段

    我正在尝试使用 jira python 模块 http jira python readthedocs org en latest 更新现有的 JIRA 具体来说 我正在尝试设置问题的fixesVersion 列表 我已经尝试了一段时间但没
  • 提交表格并上传带有请求的文件

    我正在努力提交特定的表格蟒蛇请求 http www python requests org 我想使用它的网站上的其他表单工作正常 我可以提交登录表单等 这只是我遇到问题的文件上传 显然 提交表单效果很好 因为我从网站收到一条消息 说 请返回
  • 如何在matplotlib中基于x轴更改直方图颜色

    我有根据 pandas 数据框计算出的直方图 我想根据 x 轴值更改颜色 例如 If the value is 0 the color should be green If the value is gt 0 the color shoul
  • 如何在 Python 中执行相当于预处理器指令的操作?

    有没有办法在 Python 中执行以下预处理器指令 if DEBUG lt do some code gt else lt do some other code gt endif There s debug 这是编译器预处理的特殊值 if
  • python中打印字符串的长度

    有没有什么方法可以找到 即使是最好的猜测 Python中字符串的 打印 长度 例如 potaa bto 是 8 个字符len但 tty 上只打印 6 个字符宽 预期用途 s potato x1b 01 32mpotato x1b 0 0mp
  • 请求response.iter_content()获取不完整的文件(1024MB而不是1.5GB)?

    您好 我一直在使用此代码片段从网站下载文件 到目前为止 小于 1GB 的文件都很好 但我注意到 1 5GB 文件不完整 s is requests session object r s get fileUrl headers headers
  • 从 Python 中编译的正则表达式中提取命名组正则表达式模式

    我有一个 Python 正则表达式 其中包含多个命名组 但是 如果先前的组已匹配 则可能会错过与一组匹配的模式 因为似乎不允许重叠 举个例子 import re myText sgasgAAAaoasgosaegnsBBBausgisego
  • 从 C 线程调用 Python 代码

    我对从 C 或 C 线程调用 Python 代码时如何确保线程安全感到非常困惑 The Python 文档 http docs python org c api init html non python created threads似乎是
  • 使 matplotlib 图形默认看起来像 R?

    Is there a way to make matplotlib behave identically to R or almost like R in terms of plotting defaults For example R t
  • 在读/写二进制数据结构时访问位域

    我正在为二进制格式编写一个解析器 这种二进制格式涉及不同的表 这些表同样采用二进制格式 通常包含不同的字段大小 其中 50 100 个之间 大多数这些结构都有位域 并且在 C 语言中表示时看起来像这样 struct myHeader uns
  • Selenium Python 使用代理运行浏览器[重复]

    这个问题在这里已经有答案了 我正在尝试编写一个非常简单的脚本 该脚本从 txt 文件获取代理 不需要身份验证 并用它打开浏览器 然后沿着代理列表循环此操作一定次数 我确实知道如何打开 txt 文件并使用它 我的主要问题是让代理正常工作 我见

随机推荐

  • Xcode 构建缺少预期的 TARGET_BUILD_DIR 构建设置

    我在设备上启动时遇到错误on iPhone 12 Pro Max 这是控制台日志 Launching lib main dart on iPhone 12 Pro Max in debug mode Running Xcode build
  • LINQ 连接两个字符串数组中的元素[重复]

    这个问题在这里已经有答案了 我有两个字符串数组 Array1 Paul John Mary Array2 12 13 15 我想知道是否可以连接这些数组 以便生成的数组具有类似的内容 Paul12 John13 Mary15 var Arr
  • DevTools 在 Intellij 中重新启动两次

    我正在 Intellij 中启动一个新的 Spring Boot 2 4 2 应用程序 并添加了 DevTools Spring Boot 是在 spring io 的主页中创建的 而不是通过 Intellij 创建的 在首选项 gt 构建
  • 将 save_model.pb 转换为 model.tflite

    张量流版本 2 2 0 操作系统 Windows 10 我正在尝试将 saving model pb 转换为 tflite 文件 这是我正在运行的代码 import tensorflow as tf Convert converter tf
  • 尝试编写 JPA 2.1 左外连接时出现“with 子句只能引用驱动表中的列”

    我正在使用 JPA 2 1 和 Hibernate 4 3 6 Final 我正在尝试使用 CriteriaBuilder 编写带条件的左外连接 所以我有 final CriteriaBuilder cb m entityManager g
  • 超越开闭原则

    我有一个简单的程序 它根据用户提供的鼠标数据绘制几何图形 我有一个处理鼠标跟踪的类 它获取带有鼠标移动历史记录的列表 和一个 名为 Shape 的抽象类 从这个类中 我派生了一些额外的形状 如圆形 矩形等 并且它们中的每一个都覆盖了抽象的
  • 标签文本换行但不缩进第二行

    我有一个宽度有限的表单 但是标签文本可能比表单宽度长 因此文本被换行为多行 我的问题是 由于输入元素 第一行缩进 但第二行没有缩进 这使得表单不太好 你有什么想法让第二行 第三行 将缩进为第一行 只使用CSS吗 Actual 我的期望是 这
  • 调试 Chrome 上加载的源映射

    我在缩小过程中生成 javascript 文件的源映射 使用地图文件旁边的缩小 JS 文件中的相对 URL 来引用地图文件 这是末尾的评论示例app e47a6637 js sourceMappingURL app e47a6637 js
  • `http://localhost` 上的安全 Cookie

    我正在尝试设置安全 cookiehttp localhost 3000 设置 Cookie loggedUser brillout 最大年龄 315360000 路径 仅 Http 安全的 但 Chrome 抱怨道 此 Set Cookie
  • MS Access 的新管理员,如何修改现有宏

    我是 MS Access 数据库的新管理员 我对 MS Access 很陌生 所以如果我问的问题在这里没有意义 请原谅我 当前员工的桌面上有一个小的 5MB 左右 mdb 文件 单击该文件将打开 Access 并在 Access 左侧列出查
  • 使用 ACR122U NFC 读卡器对 Mifare 1K NFC 标签进行身份验证失败

    我在使用ACR122U工具验证Mifare 1K NFC标签时总是得到失败结果 但我可以使用Android手机读取 写入该标签 ACR122U Load Authentication Keys lt FF 82 00 00 06 FF FF
  • Android Gallery 中 CoverFlow 中的错误图像重叠

    我正在摆弄 CoverFlow从这里 http www inter fuser com 2010 02 android coverflow widget v2 html以满足我的喜好并且无法解决一个问题 这是屏幕截图 截屏 https i
  • orderBy 在 Laravel 5 中不起作用

    我正在使用以下查询 orderBy在下面的查询中不起作用 此查询在本地主机中有效 但在在线服务器中无效 return DB table reports gt leftJoin sources reports report source id
  • 通过 OleDb ACE 访问 Excel 2007 二进制文件 (.xlsb)

    我发现 Excel 2007 二进制格式 扩展名为 xlsb 非常完美 适合我的需求 因为它加载速度快且非常紧凑 我交付一个 Excel 中的一堆报告包含大量数据 这些报告是 实际上正在加载一个 IS 包 所以我假设转换为这种格式 请阅读有
  • 如何打印json数据。

    我有一个像这样的 json 输出数组 data name Ben Thorpe id XXXXXXXXXXX name Francis David id XXXXXXXXXXX 我想循环遍历它并使用 javascript 打印出所有名称 我
  • 弹出视图的位置问题

    当我在 iPad 中的纵向视图和横向视图 反之亦然 之间切换时 我的弹出视图的位置出现乱码 这是我计算弹出视图框架的方法 aRect self myElement frame aRect origin x aRect size width
  • API“BaseVariant.getApplicationIdTextResource”已过时,已替换为“VariantProperties.applicationId”

    构建 gradle 时我收到以下消息 API BaseVariant getApplicationIdTextResource is obsolete and has been replaced with VariantProperties
  • 在 matplotlib 中向颜色条添加白色背景

    我想通过添加白色背景使我的颜色条更加明显 我需要图像内的颜色条 这有时很难阅读 这是没有白色背景的代码 import matplotlib pyplot as plt import numpy as np a np random rand
  • CSS3动画“进度”回调

    我只是想知道是否有一种方法可以监视元素动画的进度 我所知道的是animationstart and animationend 有没有某种animationprogress 不 没有animationprogess事件 根据W3规格 http
  • 如何使用 sqlalchemy IntegrityError 查找有问题的属性

    我有一个非常简单的 SqlAlchemy 模型 class User Base The SQLAlchemy declarative model class for a User object tablename users id Colu