如何忽略DBapi抛出的错误?

这是我现在已经制定的代码. cursor.execute("从feeds_feed中选择链接where link =%s", (self.link,)) db.commit() 如果Cursor.RowCount == 0: cursor.execute("插入feeds_feed(Release_group, 标题,链接,类别,pub_date)值(%s,%s,%s,%s,now()) (self.group,self.title,self.link,self.scategory,)) db.commit() 打印"插入" 别的: 打印"已经存在" 基本上,链接属性的唯一性在 数据库,因此,如果我尝试插入已经存在的值,我会得到一个 打破程序的错误. 现在我首先进行选择查询 检查值是否已经存在. 仅在 该值尚不存在. 这是一种非常糟糕的做事方式,因为我正在访问数据库 超出我需要的方式. 如果我只能插入,那就太好了 值到DB,让唯一性在DB级别检查到 添加或拒绝重复值. 我不是真的很感兴趣 特定值被拒绝或添加,我只想要最有效的 插入值的方法. 我真的很感谢任何建议或技巧. 谢谢.

# 回答1

" fyleow" 写道: pythonic做到这一点的方法是找出由 您要处理的事件,并处理该异常. record_stuff = build_new_record() 尝试: insert_record(record_stuff) 除了失败的ininsert,e: handle_insert_failure(e,record_stuff) 定义每个功能,命名实际异常类,然后 你完成了. - - \"很多人都害怕身高.不是我,我害怕| `\宽度." - 史蒂文·赖特(Steven Wright)| _o__)| 本·芬尼

标签: python

添加新评论