gpt4 book ai didi

java - 如何使用 Java (NetBeans) 编辑 MS Access 数据库

转载 作者:搜寻专家 更新时间:2023-10-30 23:15:17 24 4
gpt4 key购买 nike

我正在尝试使用一些 Java 代码(运行 NetBeans 7.2.1)编辑 MS Access 数据库。我设置了数据源并使用 ODBC 工具将其链接到我的数据库 ProjectDatabase 并将数据源命名为 DB,然后我运行以下代码:

导入java.sql.*;公共(public)类 NewMain {

public static void main(String[] args) {
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:DB");
Statement st=con.createStatement();
String name="roseindia";
String address="delhi";
int i=st.executeUpdate("insert into user(name,address) values('"+name+"','"+address+"')");
System.out.println("Row is added");
}
catch(Exception e){
System.out.println(e);
}
}
}

代码运行时没有错误,并返回“行已添加”消息。问题是当我返回查看数据库时,更改没有生效。我已经用删除数据的代码试过了,也没有效果。有没有人遇到过这个问题并且知道如何解决?

我正在运行 Windows 7 64 位、Microsoft Office 64 位和所有 64 位驱动程序,我无法通过网络搜索找到任何提及此问题的信息。

在此先感谢您的帮助 =)

最佳答案

首先你没有关闭连接,所以这是一个问题。同时将您的代码更改为:

   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:DB");
Statement st=con.createStatement();
con.setAutoCommit(false); //Notice change here
String name="roseindia";
String address="delhi";
int i=st.executeUpdate("insert into user(name,address) values('"+name+"','"+address+"')");
con.commit(); //Notice change here
System.out.println("Row is added");
con.close(); //Notice change here

这会将更改提交到 access 数据库,因此现在您应该能够在 MS Access 中看到数据。

阅读此处了解更多关于 Closing and Releasing JDBC resources 的最佳实践

关于java - 如何使用 Java (NetBeans) 编辑 MS Access 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15021496/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com