I am trying to connect to SQL express DB instance via jdbc. DB password is "Passw0rd\".
Here is the code I am using:
String url ="jdbc:sqlserver://hostname:2638;instanceName=SQLEXPRESSSYMC;integratedSecurity=false;encrypt=true;trustServerCertificate=true";
String password = "Passw0rd\\";
try
{
System.out.println("url:" +url );
System.out.println("Password:"+password);
Connection conn = DriverManager.getConnection(url , "DBA", password);
System.out.println("connected");
}
catch (Exception e)
{
e.printStackTrace();
}
I get following exception:
com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'DBA'. ClientConnectionId:3be3d544-73d3-4710-aa4e-dfe78b6dcbb1
com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:262),
com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:283),
com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:129),
com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:37),
com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:5233),
com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:3988),
com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:3932),
com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7375),
com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:3206),
com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:2713),
com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:2362),
com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:2213),
com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:1276),
com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:861),
java.sql/java.sql.DriverManager.getConnection(DriverManager.java:677),
java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)
If I set DB password which uses back slash character but not as an end character then it works. e.g
String password = "Passw0rd\a";
Please let me know how to resolve this?