2

我正在尝试将值插入 Ms access 数据库。该表有 4 个字段,没有主键,这 4 个字段也是数字类型。当我尝试使用准备好的语句执行以下 java 代码时:

DatabaseConnection dbcon=new DatabaseConnection();

Connection con=dbcon.dbconnection();
String query="INSERT INTO test2 VALUES(?,?,?,?)";
PreparedStatement ps= con.prepareStatement(query);
ps.setInt(1, 1);
ps.setInt(2, 2);
ps.setInt(3, 3);
ps.setInt(4, 4);
ps.executeUpdate();

查询成功执行,但 table2 不显示值。

4

2 回答 2

4

Connection 没有任何问题。我没有关闭 ResultSet 和 Connection 对象,这就是问题发生的原因。

于 2012-07-24T07:07:34.610 回答
1

像这样检查你的数据库连接,

    String dataSourceName = "mdbTEST";
    String dbURL = "jdbc:odbc:" + dataSourceName;
    try { 
         Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
         Connection con = DriverManager.getConnection(dbURL, "",""); 
   } catch (Exception err) {
        System.out.println( "Error: " + err );
   }

如果连接不正常,您可能在系统上设置了数据源名称。请尝试以下步骤。

  1. 在 Windows 中,选择开始 > 设置 > 控制面板 > 管理工具 > 数据源。
  2. 在 ODBC 数据源管理器对话框中,单击系统 DSN 选项卡。
  3. 单击添加以将新的 DSN 添加到列表中。
  4. 向下滚动并选择 Microsoft Access (.MDB) 驱动程序
  5. 为数据源名称键入名称“mdbTEST”(不加引号,但大小写相同)
  6. 单击创建并选择一个文件来保存数据库(我选择“D:\java\mdbTEST.mdb”)——这将创建一个新的空白 MS Access 数据库!一路点击“ok” 现在我们的数据源就完成了!
于 2012-07-17T07:17:19.023 回答