java连接到MicrosoftSQLServer 2005

时间:2011-01-28 10:29:31

标签: java sql-server-2005 jdbc

Java与MicrosoftSqlServer 2005连接。

  • 使用的IDE:Eclipse helios
  • 使用的驱动程序:sqljdbc.jar
  • .dll:来自x86文件夹的sqljdbc_auth.dll。
  • .dll被添加到system32文件夹重启系统。
  • Ping使用sqljdbc.jar
  • 成功连接eclipse和SQL Server 2005

错误报告是:

15:45:48,218 ERROR [STDERR] Jan 28, 2011 3:45:48 PM com.microsoft.sqlserver.jdbc.AuthenticationJNI <clinit>
WARNING: Failed to load the sqljdbc_auth.dll
15:46:02,671 ERROR [STDERR] com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host localhost, port 1433 has failed. Error: "connect timed out. Verify the connection properties, check that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port, and that no firewall is blocking TCP connections to the port.".

HELLO ALL,

我已在执行命令中执行此操作:我现在正在犯这个错误:

C:\>java -cp .;"C:\sqljdbc_1.2\enu\sqljdbc.jar" -Djava.library.path="C:\sqljdbc_
1.2\enu\auth\x86" mfirst
Exception in thread "main" java.lang.NoClassDefFoundError: mfirst
Caused by: java.lang.ClassNotFoundException: mfirst
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: mfirst.  Program will exit.

3 个答案:

答案 0 :(得分:4)

哈利是对的。驱动程序无法加载身份验证DLL。转到您的环境变量并添加到PATHC:\JavaLib\Microsoft SQL Server JDBC Driver 3.0\sqljdbc_3.0\enu\auth\x64(为您的计算机选择正确的auth子文件夹 - 即x86等) 重新启动IDE,它应该像宣传的那样工作

答案 1 :(得分:3)

请将 sqljdbc_auth.dll 文件复制到jdk bin文件夹中。 ieC:\ Program Files \ Java \ jdk1.6_32 \ bin粘贴文件,位于运行JVM的服务器端 如果消费网络服务也请在客户端申请。

答案 2 :(得分:0)

您的程序输出看起来不像是与JDBC有关的问题。你正在调用Java,传递一些环境参数,但从根本上告诉它开始使用类mfirst执行。

因此,程序输出指出:

  

无法找到主要类:mfirst。程序将退出。

这看起来不像主类的正确名称(没有包,没有大写字符)。你确定你正确地调用了程序吗?