如何在Sqlite中识别导致插入异常的约束



我怎么知道什么类型的约束异常是在Sqlite插入引发的。它造成了什么?例如,如果我设计一个具有唯一约束和主键约束的表,并且我插入违反约束的行,sqlite将引发SqliteConstraintException,但我想知道这两个约束中哪一个被违反了。这将有助于为用户创建错误消息。而不是在插入行之前编写验证行的函数。谢谢你的帮助。

该信息没有作为Exception的字段提供。可以通过getMessage()方法获取原因信息。比如UNIQUE constraint failed: event.id。这是告诉您违反约束的名称和列,但不是违反约束的名称。

最新更新