0

python 中用于与 postgres 交互的 pg 模块没有为 DML 查询提供任何错误消息。

是否有任何替代 pg 模块可以提供有意义的错误消息。

>>>import pg 
>>>
>>>
>>>conn = pg.connect(dbname="db", user="postgres", host="localhost")
>>>print conn.query("delete from item where item_id=0")
>>>None
>>>print conn.query("delete from item where item_id=0")
>>>None                     #This should have been an error message
4

2 回答 2

2

为什么您会收到错误消息?如果未找到记录,我删除不会在服务器中引发错误。那么,为什么您期望一个普遍适用的数据库驱动程序会引发错误呢?

我想不出在这种情况下会发出错误的任何数据库驱动程序,因为它可能有完全正当的理由。例如,在数据库术语中,错误通常意味着您要回滚事务。

如果您要封装自己的 API,我的建议是,您要么决定希望应用程序如何解决此问题,要么最多发出警告。

于 2013-11-13T05:41:13.350 回答
0

你知道psycopg2模块吗?通过 Python 与 PostgreSQL 交互似乎是一个非常好的模块。除了模块的文档之外,还有一个可用的教程。在文档中给出的示例中,失败的命令确实会打印出错误消息。

我个人没有这个模块的经验。但它看起来非常漂亮!

于 2013-09-06T18:57:29.987 回答