【发布时间】:2012-11-06 22:59:52
【问题描述】:
我使用 java swing 创建了一个数据库应用程序。每当我调用 find 类时,我的程序都会从数据库中检索数据。 find 类只是简单地创建一个语句,获取当前的数据库连接,然后执行该语句。从数据库返回的值将被放置在一个 ResultSet 上,然后将显示在一个 jTable 上。问题是这样的:
我打开了查找类,结果显示出来了。然后我转到 SQLyog 或 HeidiSQL(用于操作数据库的应用程序),编辑程序中显示的值,然后保存。我回到我的程序,关闭查找类然后重新打开它,我仍然得到以前的数据,而不是编辑过的数据。请帮忙。查找类打开后必须显示更新。我获取更新数据的唯一方法是关闭我的整个程序然后重新打开它,我不想这样做。
编辑: 这是我尝试过的。基本上,一旦我的程序第一次创建到数据库的连接,我将它保存到另一个类,这使得连接始终打开(我假设)。因此,每当我想创建查询时,我都会调用该类来获取连接。我现在所做的是,在从 find 类执行查询之后,我关闭了与 .close() 函数的连接。它有效,但我真的需要每次都关闭连接吗?同样,这只是一个桌面应用程序,而不是 Web 程序。
【问题讨论】:
-
您确定这些工具确实提交了对您的数据所做的更改吗?
-
您是否在数据库中提交了更改?
-
是的。我获取更新数据的唯一方法是退出整个程序并重新打开它,我不想这样做。
-
查找类只是我程序的一部分。它只是搜索值,然后将数据显示给用户。整个程序会在数据库中添加、编辑和删除值。
-
在访问
Find类时,您似乎没有执行SELECT语句。你是怎么打开的?
标签: java database jdbc resultset