MS SQL Server和JDBC:关闭连接 [英] MS SQL Server and JDBC: closed connection

查看:198
本文介绍了MS SQL Server和JDBC:关闭连接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我得到


I / O错误:数据库服务器已关闭连接。

SQL服务器处于混合模式,它位于本地机器中。我的连接字符串是
jTDS

SQL server is in mixed mode and its in local machine.My connection string is jTDS


jdbc:jtds:sqlserver:// machineName:1433; databaseName = DB; integratedSecurity = true






堆栈跟踪


stack trace is


java.sql.SQLException:I / O错误: DB服务器关闭连接。
at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2311)
at net.sourceforge.jtds.jdbc.TdsCore.login(TdsCore.java:610)
at net.sourceforge.jtds.jdbc.ConnectionJDBC2。(ConnectionJDBC2.java:345)
at net.sourceforge.jtds.jdbc.ConnectionJDBC3。(ConnectionJDBC3.java:50)
at net.sourceforge.jtds .jdbc.Driver.connect(Driver.java:184)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at com.app.hibernate.test。(test.java:22)
at com.app.hibernate.test.main(test.java:53)
引起:java.io.IOException:DB服务器关闭连接。
at net.sourceforge.jtds.jdbc.SharedSocket.readPacket(SharedSocket.java:848)
at net.sourceforge.jtds.jdbc.SharedSocket.getNetPacket(SharedSocket.java:727)
at net.sourceforge.jtds.jdbc.ResponseStream.getPacket(ResponseStream.java:466)
at net.sourceforge.jtds.jdbc.ResponseStream.read(ResponseStream.java:103)
at net.sourceforge .jtds.jdbc.TdsCore.nextToken(TdsCore.java:2206)
... 8更多
线程main中的异常java.lang.NullPointerException
at com.app.hibernate。 test.db(test.java:36)
at com.app.hibernate.test.main(test.java:54)

java.sql.SQLException: I/O Error: DB server closed connection. at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2311) at net.sourceforge.jtds.jdbc.TdsCore.login(TdsCore.java:610) at net.sourceforge.jtds.jdbc.ConnectionJDBC2.(ConnectionJDBC2.java:345) at net.sourceforge.jtds.jdbc.ConnectionJDBC3.(ConnectionJDBC3.java:50) at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:184) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at com.app.hibernate.test.(test.java:22) at com.app.hibernate.test.main(test.java:53) Caused by: java.io.IOException: DB server closed connection. at net.sourceforge.jtds.jdbc.SharedSocket.readPacket(SharedSocket.java:848) at net.sourceforge.jtds.jdbc.SharedSocket.getNetPacket(SharedSocket.java:727) at net.sourceforge.jtds.jdbc.ResponseStream.getPacket(ResponseStream.java:466) at net.sourceforge.jtds.jdbc.ResponseStream.read(ResponseStream.java:103) at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2206) ... 8 more Exception in thread "main" java.lang.NullPointerException at com.app.hibernate.test.db(test.java:36) at com.app.hibernate.test.main(test.java:54)

JDBC驱动程序


String url =jdbc:sqlserver:// machine:1433; instance = SQLEXPRESS; databaseName = db;

String url ="jdbc:sqlserver://machine:1433;instance=SQLEXPRESS;databaseName=db";

stacktrace

stacktrace


com.microsoft.sqlserver.jdbc.SQLServerException:用户'username'登录失败。
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:156)
at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:240)
at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:78)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2636)
at com.microsoft .sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2046)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.access $ 000(SQLServerConnection.java:41)
at com.microsoft.sqlserver。 jdbc.SQLServerConnection $ LogonCommand.doExecute(SQLServerConnection.java:2034)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4003)
at com.microsoft.sqlserver.jdbc。 SQLServerConnection.executeCommand(SQLServerConnection.java:1550)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1207)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.loginWithoutFailover(SQLServerConnection.java:1054)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:758)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:842)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at com.app.hibernate.test。(test.java:22)
at com.app.hibernate.test.main(test.java:53)
线程中的异常main com.app.hibernate.test.db中的java.lang.NullPointerException
(test.java:36)com.app.hibernate.test.main上的
(test.java:54)

com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'username'. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:156) at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:240) at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:78) at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2636) at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2046) at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41) at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:2034) at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4003) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1550) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1207) at com.microsoft.sqlserver.jdbc.SQLServerConnection.loginWithoutFailover(SQLServerConnection.java:1054) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:758) at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:842) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at com.app.hibernate.test.(test.java:22) at com.app.hibernate.test.main(test.java:53) Exception in thread "main" java.lang.NullPointerException at com.app.hibernate.test.db(test.java:36) at com.app.hibernate.test.main(test.java:54)


推荐答案

您的连接字符串和身份验证有错误。如果是混合模式,请不要使用 SQL身份验证

Your Connection String and authentication have errors. if it is mix mode don't use SQL authentication

试试这个

PC名称:janaka-pc SQL用户名:sa SQL密码

:1234 数据库:Janak_DB

PC Name : janaka-pc SQL User Name : sa SQL Password
: 1234 Database : Janak_DB

JDBC中sql Conncetion的代码

Class.forName( com.microsoft.sqlserver.jdbc.SQLServerDriver);

连接conn = DriverManager.getConnection(jdbc:sqlserver:// janaka-PC; user = sa; password = 1234; database = Janak_DB );

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection("jdbc:sqlserver://janaka-PC;user=sa;password=1234;database=Janak_DB");

这篇关于MS SQL Server和JDBC:关闭连接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆