传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 1 (""): 数据类型 0x38 未知。 (

今天将一个SQL2000备份的bak还原到SQL2005进行链接,抛出异常以下:

    java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 1 (""): 数据类型 0x38 未知。java

    最后解决办法:sql

    1.下载SQL2005驱动包,连接地址:http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=E22BC83B-32FF-4474-A44A-22B6AE2C4E17&displaylang=zh-cnsqlserver

    2.解压后,将sqljdbc.jar拷贝到项目lib目录下,build path。ui

 

修改1:url

  1. Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); // 2005 version   
  2. Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); // 2000 version  


修改2:spa

  1. Connection con = DriverManager.getConnection("jdbc:sqlserver://<ServerName>;user=<UserName>;password=<Password>");//2005 version   
  2. Connection con = DriverManager.getConnection("jdbc:microsoft:sqlserver://<ServerName>;user=<UserName>;password=<Password>");//2000 version  



如:server

  1. //SQL2005 version   
  2. connection.driver_class=com.microsoft.sqlserver.jdbc.SQLServerDriver   
  3. Connection.url=jdbc:sqlserver://localhost:1433;DatabaseName=Hello