我用 Java 创建了一个简单的 Java 连接脚本来连接到如下所示的数据库。
import java.sql.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class dbconn {
public static void main(String[] args) throws ClassNotFoundException
{
Class.forName("org.sqlite.JDBC");
Connection connection = null;
try
{
// create a database connection
connection = DriverManager.getConnection("jdbc:sqlite:C:/Program Files (x86)/Spiceworks/db/spiceworks_prod.db");
Statement statement = connection.createStatement();
statement.setQueryTimeout(30); // set timeout to 30 sec.
}
catch(SQLException e)
{
// if the error message is "out of memory",
// it probably means no database file is found
System.err.println(e.getMessage());
}
finally
{
try
{
if(connection != null)
connection.close();
}
catch(SQLException e)
{
// connection close failed.
System.err.println(e);
}
}
}
}
现在我已经通过 dbconn 脚本内的一些 SQL 查询测试了此连接,它可以工作。
但是我的问题是,如何将此数据库实例调用到同一项目中的另一个表单中以执行相同的 SQL 查询:
ResultSet resultSet = null;
resultSet = statement.executeQuery("SELECT * FROM users");
while (resultSet.next())
{
System.out.println("EMPLOYEE Email: " + resultSet.getString("email"));
}
最佳答案
您可以保留并重用连接
,可能将其保存在某个静态字段中。如果从多个线程访问它,SQLite 必须工作在 Serialized mode 。如果连接由于某种原因丢失,您必须在某处放置代码才能重新建立连接。
如果Connection
的使用并不频繁,您还可以使用一些方法来打开它并在不再需要时关闭它,最好在finally
block 内。
关于java - 以另一种形式使用 Java DB 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14353107/