【发布时间】:2011-01-20 23:38:47
【问题描述】:
我想写一个java程序作为mysql数据库的用户界面,程序应该做以下事情:
1.连接数据库,显示数据库中可用的表
2.显示表格数据
3.修改表数据(插入、编辑、删除、排序)行
我尝试过只使用 JDBC,但找不到将表数据放入多维数组的方法
是否有我应该使用的 API 而不仅仅是 JDBC?
【问题讨论】:
我想写一个java程序作为mysql数据库的用户界面,程序应该做以下事情:
1.连接数据库,显示数据库中可用的表
2.显示表格数据
3.修改表数据(插入、编辑、删除、排序)行
我尝试过只使用 JDBC,但找不到将表数据放入多维数组的方法
是否有我应该使用的 API 而不仅仅是 JDBC?
【问题讨论】:
这个posting 展示了如何获取数据库中所有表的列表。
另一个明显的投票插件:) Adamski 上面提供的链接还包含我从 ResultSet 填充 JTable 的两个建议。它的 2 行代码(当您使用提供的 ListTableModel 时)!
【讨论】:
Blatent plug for votes:Here is an answer 我提出了一个类似的问题,关于从 JDBC ResultSet 填充 JTable。正如 Michael 所说,现有的 SQL 客户端很多,因此绝对不值得自己构建。但是,如果您想用 ResultSet 数据填充 JTable 的原因不是从头开始编写自己的 SQL 客户端,那么链接的答案可能会有所帮助。
基本上,您需要的两个 API 是 JDBC 和 Swing(或 SWT 等替代方案)。我建议在 Swing 的 Event Dispatch 线程以外的线程上从您的 ResultSet 读回数据;否则,您的 UI 将在大型读取操作期间锁定。
【讨论】:
不,JDBC 是正确的 API。将 DB 表数据表示为多维数组并不是一个好主意。
你知道 Java 中有很多 existing general SQL clients 吗?
【讨论】: