我有以下问题:我无法将我的Sql Server数据库连接到我的Java project.My数据库是SQL Server2008 R2。并使用Windows身份验证模式。我使用了下面这行代码,但仍然存在同样的问题。
"jdbc: sqlserver :/ / localhost; integratedSecurity = true;"
如果数据库用户有密码,我必须集成以下代码行?
"jdbc: `sqlserver :/ / localhost; integratedSecurity = true; = user, password =;"
如果我不能使用Windows身份验证进行身份验证,我必须使用相同的数据创建第二个数据库,唯一的区别是使用Sql Server身份验证而不是Windows身份验证。
发布于 2013-06-28 16:25:43
JDBC驱动程序通过integratedSecurity连接字符串属性支持在Windows操作系统上使用Type2集成身份验证。要使用集成身份验证,请将sqljdbc_auth.dll文件复制到安装了JDBC驱动程序的计算机上的Windows系统路径上的目录中。sqljdbc_auth.dll文件安装在以下位置:
<installation directory>\sqljdbc_<version>\<language>\auth\
对于Microsoft JDBC Driver For SQL Server支持的任何操作系统,有关Microsoft JDBC Driver 4.0 for SQL Server中添加的功能的说明,请参阅使用Kerberos集成身份验证连接到SQL Server,该功能允许应用程序使用Type 4 Kerberos的集成身份验证连接到数据库。
注意:如果您运行的是32位Java Virtual Machine,请使用x86文件夹中的sqljdbc_auth.dll文件,即使操作系统是x64版本也是如此。如果您在x64处理器上运行64位JVM,请使用x64文件夹中的sqljdbc_auth.dll文件。或者,您可以设置java.libary.path系统属性来指定sqljdbc_auth.dll的目录。
例如,如果JDBC驱动程序安装在缺省目录中,则可以在启动-Djava.library.path=C:\Microsoft应用程序时使用以下虚拟机(VM)参数指定DLL的位置: SQL driver 4.0 For SQL
Server\sqljdbc_<version>\enu\auth\x86
发布于 2013-06-28 11:33:24
您得到的错误表明问题出在JDBC驱动程序上,而不是数据库或应用程序代码上。
根据Microsoft论坛,该问题已在驱动程序的1.2版中修复。请尝试下载此版本,因为它应该可以解决您的问题。
最新版本可在http://www.microsoft.com/en-in/download/details.aspx?id=11774上找到
参考:http://www.microsoft.com/en-in/download/details.aspx?id=11774
https://stackoverflow.com/questions/17361714
复制