2

我希望能够检查是否可以使用新对象编辑数据库中的单元格

示例方法声明:

something.isValid(Object newObject, row, column);

示例案例:

  • 如果编辑单元格存储一个数字,我给它一个字符串,该方法将返回 false...
  • 如果编辑单元格必须不同于所有其他条目(唯一)并且新对象与其他对象相同,则该方法也将返回 false....

我的主要目标...我想检查一整行,如果一切都有效,我将编辑整行。

现在,我能确定是否可以实际编辑某些内容的唯一方法是实际编辑它并查看是否出现错误。

edit://Interface DatabaseMetaData是一个好方法。有SQL命令方法吗?

****edit://我觉得resultsetmeta数据已经足够好了。但是,isUnique()方法在哪里?** edit://isSigned() 完成了这个?编辑://所以我只检查 !isSigned() 和 isWritable()。数据库列条件呢?例如... X 必须超过 3 个字符...**

4

1 回答 1

3

不要使用Object,而只使用与相关数据类型相关联的类型。您可以在此处找到有关应将哪些 Java 对象类型用于某些 DB 数据类型的更多详细信息,其中包括此表:

替代文字
(来源:oracle.com

或者,您可以使用DatabaseMetaData#getColumns()计算列信息(列名、数据类型、大小、最大长度、可空等)。

还有许多其他方法可能有用,例如计算getIndexInfo()所有索引、getPrimaryKeys()计算 PK、getExportedKeys()计算 FK 等等。DatabaseMetaData只需在整个API中翻一翻,就可以找到你需要的。

于 2010-04-20T21:16:17.503 回答