从RestulSet表编辑JTable

继续这个问题。

我的问题是我无法编辑我的JTable。 我得到一个exception和Object值而不是我应该看到的。

我正在使用带有MS-Access数据库的ResultSet表代码并进行一些修改。 我的代码可以在这里找到。 我调用rs.updateRow()rs.updateRow()错误。 java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver]Error in row

我使用updateRow()对这个错误进行了谷歌搜索,并没有多少提出来。 我看到的唯一真正的答案是使用预备语句,但我不是SQL命令的专家。

如果你能告诉我使其成为GlazedList的最佳方法,那么我也可以轻松过滤。 除非你能为我提供一些可以轻松过滤常规JTable的东西。

试图提供更多帮助,因为最初的解决方案不能100%工作。

尝试使用以下信息: 可更新的ResultSet以了解如何通过在Connection创建Statement对象时指定参数来使ResultSet可更新。 我意识到默认情况下可能没有为您设置此选项。 如果您的驱动程序支持此模式,它应该允许代码工作。

编辑:它不一定是驱动程序(如果你想改变它,你将需要一个JAR)。 您需要在创建表时启用ResultSet.TYPE_SCROLL_SENSITIVE – 驱动程序可能仍支持此模式。 有一些方法可以探测JDBC驱动程序支持的内容,但除非您使用像SquirrelSQL Client这样的GUI来获取完整的function列表,否则它们很难使用。

我正在使用ResultSet表代码

在Web上搜索ResultSetTableModel的更好示例。 我相信你会找到一个已经实现了setValueAt(…)方法的方法。 或者另一种方法是将数据从ResultSet复制到DefaultTableModel,然后您可以编辑它没有问题。

除非你能提供一些能够轻松地对常规JTable进行分类的东西。

您是否已阅读JTable API并按照“如何使用表”的Swing教程链接进行操作,其中包含排序的工作示例,因为排序是JDK的默认部分。