Microsoft JDBC Driver 4.0 for SQL Server,这是一个 Type 4 JDBC 驱动程序,它通过 Java Platform Enterprise Edition 5 和 6 中可用的标准 JDBC 应用程序编程接口 (API) 提供数据库连接。
由于在互操作性方面的不懈努力,Microsoft 已经发布了 Microsoft JDBC Driver for SQL Server 的 4.0 版。所有 SQL Server 用户都可以免费下载 Microsoft JDBC Driver 4.0 for SQL Server,并可以从任何 Java 应用程序、应用程序服务器或支持 Java 的小程序访问 Microsoft® SQL Server® 2012、SQL Server 2008 R2、SQL Server 2008、SQL Server 2005 和 SQL Azure。这是一个 Type 4 JDBC 驱动程序,它通过 Java Platform Enterprise Edition 5 和 6 中可用的标准 JDBC 应用程序编程接口 (API) 提供数据库连接。
JDBC 驱动程序的这一发行版与 JDBC 4.0 兼容,并在 Java 开发工具包 (JDK) 版本 5.0 或 6.0 上运行。
在软件包解压缩之后,通过打开
%InstallationDirectory%Microsoft JDBC Driver 4.0 for SQL Serversqljdbc_<版本><语言>
helpdefault.htm 以打开 JDBC 帮助系统。此时将在 Web 浏览器中显示帮助系统。
支持的操作系统: Linux, Unix, Windows 7, Windows Server 2008 R2, Windows Vista
上面的列表是某些受支持的操作系统的示例。JDBC 驱动程序可在任何支持使用 Java 虚拟机 (JVM) 的操作系统上工作。但是,只有 Sun Solaris、SUSE Linux 以及 Windows 操作系统经过了测试。
Java 开发工具包:5.0 和 6.0
JDBC Driver 的 Microsoft Windows 版本安装说明
注意:下载 Microsoft JDBC Driver 4.0 for SQL Server 则表明您接受此组件的《最终用户许可协议》(EULA) 的条款和条件。请查看此页上的《最终用户许可协议》(EULA) 并打印一份 EULA 以供备案。
1.将 sqljdbc_<版本>_<语言>.exe 下载到一个临时目录。
2.运行 sqljdbc_<版本>_<语言>.exe.
3.按照提示输入安装目录。我们建议您将此 zip 文件解压缩到 %ProgramFiles% 中的默认目录下:"Microsoft JDBC Driver 4.0 for SQL Server"。
4.在软件包解压缩之后,通过打开 %InstallationDirectory%Microsoft JDBC Driver 4.0 for SQL Serversqljdbc_<版本><语言>helpdefault.htm 以打开 JDBC 帮助系统。此时将在 Web 浏览器中显示帮助系统。
JDBC Driver 的 UNIX 版本安装说明
1.将 sqljdbc_<版本>_<语言>.tar.gz 下载到一个临时目录。
2.若要解压缩此压缩的 tar 文件,请导航至要解压缩驱动程序的目录中,然后键入 gzip -d sqljdbc_<版本>_<语言>.tar.gz.
3.若要解压缩 tar 文件,请将其移至您要安装驱动程序的目录中,然后键入 tar –xf sqljdbc_<版本>_<语言>.tar. 。
4.在软件包解压缩之后,通过打开 %InstallationDirectory%/Microsoft JDBC Driver 4.0 for SQL Server/sqljdbc_<版本>/<语言>/help/default.htm 以打开 JDBC 帮助系统。此时将在默认的 Web 浏览器中显示帮助系统。
1765616 对于 katmai 和更高版本,DatabaseMetadata.getTypeInfo 现在为 date、time、
datetime2、datetimeoffset 返回新 java.sql.Type 值。
1764334 增加了对于跟踪 JDBC XA 超时和 XID 的支持。
1750318 SQLServerDatabaseMetaData 函数现在可在重复使用入池连接时正确工作。
1768845 setTimestamp 和 updateTimestamp 的行为在关于往返方面已经一致。驱动程序会在将数据发送到
服务器之前先将其舍入到 7 位小数。
1770134 具有最大值 (23:59:59.999) 的时间后端类型上的 updateTime 现在可导致正确的舍入行为。
1761042 DataSource Boolean 属性现在会记录退出调用。
1750330 更新了 XA SQL 脚本以避免在首次运行时出现误导错误。
1761393 为 unwrap 方法改进了跟踪。
1945579 DatabaseMetaData.getSchemas 现在可针对所有排序规则与 SQL Azure 和 SQL Server 一起正常工作。
1963089 hostNameInCertificate 连接属性不再是针对 SQL Azure 验证 SSL 证书时所必需的。
1958531 如果不是为数据库镜像设置的服务器连接在登录过程中失败(例如,数据库不存在),驱动程序不会自动重试。
1954701 插入重复行时引发的异常现在包含 SQLState 23000。
2055259 改进了加载 sqljdbc_auth.dll 后集成身份验证失败时的错误信息。
2083373 针对 SQL Azure 的使用了无效参数的大型参数化查询现在引发异常时不关闭连接。
2084385 getDate、getTimestamp、getDateTimeOffset 现在返回所有日期都使用 JRE 1.7 的正确值。
2105115 从 DatabaseMetaData.getColumns 获取的 ResultSet 上的 getObject 现在可以正常工作。
注意:
1、该版本Microsoft JDBC Driver 4.0 for SQL Server的运行环境:Linux;Unix;Windows 7;Windows Server 2008 R2;Windows Vista。
换言之,不再支持win2003和XP。
2、支持的SQL Server 版本为:
Microsoft SQL Server 2012
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2008
Microsoft SQL Server 2005
Microsoft SQL AzureTM(新增)
不再支持SQL Server 2000及以下版本。而3.0则支持SQL Server 2000/2005/2008/2008r2版本。(http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=a737000d-68d0-4531-b65d-da0f2a735707)
做了个测试,下载Microsoft JDBC Driver 4.0 for SQL Server,并解压,参照这篇文章http://www.cnblogs.com/downmoon/archive/2009/07/16/1524687.html ,复制sqljdbc4.dll,到JRE目录下,并添加引用。
不料在DEMO程序中一直提示无法连接,提示“无法创建下列URL的连接:jdbc:sqlserver://ap2\vegnet:1433;DatabaseName=Db2010Demo”,我的连接串如下:
driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
sqlserver.url=jdbc:sqlserver://ap2\vegnet:1433;DatabaseName=Db2010Demo
sqlserver.user=demo
sqlserver.password=demo2012
sqlserver.maxconn=2000
确认用户名和密码无误,防火墙无误,于是怀疑该新驱动程序不支持非默认实例名的连接。换了另外服务器的默认的实例也不行。后来,发现自己的SQL Server 默认端口没有设置,
如下图:
设置好端口,重新启动SQL Server服务。连接成功!!