我有以下代码来测试新服务器上的访问数据库的链接,一切都与现有服务器一起工作,我能够访问该文件夹。 !if.exists返回true,我可以使用Runtime.getRuntime()。exec(“run ......... + f)打开数据库;所以我知道它可以看到数据库。我无法获取失败的原因,但它100%在Connection conn = de .....
失败任何人都可以帮助我。
运行提供以下输出 - Java结果:-1073741811
package testing;
import connections.LocalProperties;
import java.io.File;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
public class NewClass {
public static void main(String[] args) {
try {
File f = new File("\\\\***\\***\\****\\***.accdb");
if (!f.exists()) {
System.out.println("file does not exist" + f.getAbsolutePath());
return;
} else {
System.out.println("file does exist" + f.getAbsolutePath());
}
String url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + f.getAbsolutePath();
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String m_URLString = url;
String m_UserName = System.getProperty("user.name");
String m_Password = "*******";
Connection conn = DriverManager.getConnection(m_URLString, m_UserName, m_Password);
conn.close();
} catch (SQLException ex) {
Logger.getLogger(NewClass.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
运行时我得到以下弹出窗口: JAVA.EXE 如果您处于中间位置,信息可能会丢失,有关详细信息,请单击此处
错误签名
应用程序名称:java.exe appver 7.0.30.5 modname:msvcr80.dll
答案 0 :(得分:0)
我认为你错过了这一行 -
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");