在我的程序中,我有一个Java方法,它访问MSSql server 2008 DB并更新其中的一些表 当我尝试运行此方法时,我收到此错误
WARNING: Failed to load the sqljdbc_auth.dll
java.lang.ExceptionInInitializerError
我已将sqljdbc_auth.dll添加到windows / system32文件夹中
在MSSql server 2008控制台中启用TCP / IP连接
在环境设置中添加了路径
系统要求: 窗口7-64位
此错误是否是由32位/ 64位冲突造成的?
答案 0 :(得分:0)
您需要确保设置了libpath和系统路径 您需要确保您使用的JVM与您尝试加载的DLL匹配。即如果你使用32位JVM使用32位驱动程序,如果你使用64位jvm,使用64位驱动程序。
我认为这是一个非常好的教程: http://thusithamabotuwana.wordpress.com/2012/07/19/connecting-to-sql-server-from-java/
答案 1 :(得分:0)
您可以设置java.libary.path
系统属性以指定sqljdbc_auth.dll
的目录。例如,如果JDBC驱动程序安装在缺省目录中,则可以在启动Java应用程序时使用以下虚拟机(VM)参数指定DLL的位置:
-Djava.library.path=c:/sqljdbc_<version>/enu/auth/x86
或
-Djava.library.path=c:/sqljdbc_<version>/enu/auth/x64