【问题标题】:javax.servlet.ServletException: [Microsoft][SQLServer 2000 Driver for JDBC]End of stream was detected on a read [closed]javax.servlet.ServletException:[Microsoft][SQLServer 2000 Driver for JDBC]在读取时检测到流结束[关闭]
【发布时间】:2018-05-16 04:23:03
【问题描述】:
String sql = "SELECT 1 AS T Union SELECT 2 AS T Union SELECT 3 AS T \n";
sql += "Union SELECT 4 AS T Union SELECT 5 AS T Union SELECT 6 AS T\n";
sql += "Union SELECT 4 AS T Union SELECT 5 AS T Union SELECT 6 AS T\n";
.....Same Statement....
sql += "Union SELECT 4 AS T Union SELECT 5 AS T Union SELECT 6 AS T\n";  

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
String connStr = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=DBName;User=UserName;Password=Pwd;";
Connection con = DriverManager.getConnection(connStr);

Statement smt = con.createStatement();
ResultSet rst = smt.executeQuery(sql);

rst.close(); smt.close(); con.close();

【问题讨论】:

  • 请将异常发布为文本,而不是屏幕截图。您使用的 SQL Server 版本是什么?为什么您使用 +/- 17 年的 JDBC 驱动程序而不是较新的版本?
  • 我正在使用:SQL Server 2012, Tomcat 5.5, JDK 1.8 异常: org.apache.jasper.JasperException: Exception in JSP: /test1.jsp:92 89: Connection con = DriverManager.getConnection(连接器); 91: 语句 smt = con.createStatement(); 92: 结果集 rst = smt.executeQuery(sql); 94:rst.close(); smt.close(); con.close(); 95:%>
  • 请编辑您的问题以添加信息,不要使用 cmets,并且作为第一步:将您的驱动程序升级到 SQL Server JDBC driver 版本 6.2.2,而不是使用可能不是的旧版本甚至与 SQL Server 2012 兼容。

标签: java sql-server jsp jdbc


【解决方案1】:

将驱动程序升级到 SQL Server JDBC 驱动程序版本 6.2.2。
问题解决了。
感谢您的帮助。

【讨论】:

    猜你喜欢
    • 2019-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-28
    • 2013-10-17
    • 1970-01-01
    • 2012-10-13
    • 2012-06-22
    相关资源
    最近更新 更多