zoukankan      html  css  js  c++  java
  • Microsoft JDBC Driver 4.0 for SQL Server

    在微软发布SQL Server 2012的前一天,也同时发布了针对SQL Server 2012的JDBC Driver 4,下载地址为:

    http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=49C554CA-41A0-472C-B728-75DF5789369C

    从 3.0 到 4.0 的更改:

    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服务。连接成功!!

     其他示例:

    JDBC Driver For SQL2000/2005/2008

    java中如何以windows集成方式连接SQL Server

  • 相关阅读:
    【光学相机】关于网络通信的方法及函数
    InvokeRequired与Invoke
    线程基本概念
    线程同步与线程异步
    AutoResetEvent和ManualResetEvent
    C#图像亮度调式与伪彩色图的处理
    Github文件高速下载方法
    JDK11以上版本没有JRE的解决方法
    mysql 随机函数生成某个范围内的整数
    mysql主键id重置
  • 原文地址:https://www.cnblogs.com/downmoon/p/2389976.html
Copyright © 2011-2022 走看看