Java 测试SQL Server连接
我正在使用Netbeans(我的库中有jar文件)连接到SQL Server,不知道为什么什么都没有发生。我可以在我的屏幕上看到以下消息打印Java 测试SQL Server连接,java,sql-server,Java,Sql Server,我正在使用Netbeans(我的库中有jar文件)连接到SQL Server,不知道为什么什么都没有发生。我可以在我的屏幕上看到以下消息打印加载位于xx.xx.x.xxx的SQL Server驱动程序,之后不会发生任何事情: 我还试图测试连接是否为空,但出于某种原因,System.out.println(“连接成功!”)没有打印任何内容,因此我怀疑它没有连接。有人能看看这里发生了什么吗: 我的代码在这里: try { String QueryStr
加载位于xx.xx.x.xxx的SQL Server驱动程序
,之后不会发生任何事情:
我还试图测试连接是否为空,但出于某种原因,System.out.println(“连接成功!”)代码>没有打印任何内容,因此我怀疑它没有连接。有人能看看这里发生了什么吗:
我的代码在这里:
try {
String QueryStringGlobalAlertLogs = "";
try{
System.out.println("Loading the Driver for SQL Server at xx.xx.x.xxx");
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
}
catch(java.lang.ClassNotFoundException e){
return 0;
}
connRemoteforGlobal = java.sql.DriverManager.getConnection("jdbc:sqlserver://xx.xx.x.xxx;databaseName=Alerts",RemoteSQLServerUser,RemoteSQLServerPass);
if(connRemoteforGlobal != null)
{
System.out.println("Connection Successful !");
}
QueryStringGlobalAlertLogs = // My INSERT Query here
}// End of first try
catch(SQLException ex2){
ex2.printStackTrace();
System.out.println("Error Trace in Connection : " + ex2.getMessage());
}
您必须同时捕获Class.forName
和getConnection
。
试试这个:
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
DriverManager.getConnection("jdbc:sqlserver://xx.xx.x.xxx;databaseName=Alerts",RemoteSQLServerUser,RemoteSQLServerPass);
}catch(SQLException e1){
// handle error
}catch(ClassNotFoundException e2){
// handle error
}
catch(){return 0}
?也许你实际上应该做一些有异常的事情,而不是试图让这段代码像VB的“下一次错误恢复时的”
。那么你会推荐什么呢?当我写false时,它抛出错误。你认为这可能是问题所在吗?至少试试System.out.println(e.getMessage())
获取调试消息,而不是忽略异常。@JoachimIsaksson尝试了System.out.println(e.getMessage())代码>和e.printStackTrace()代码>但没有变化。我做了,但仍然不知道为什么它没有前进。我故意注释掉了Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”)代码>并在堆栈跟踪中得到错误消息“找不到合适的驱动程序”,因此控件肯定会在那里运行,但仍然无法理解为什么它不能向前移动。有没有其他方法来测试出了什么问题?我的连接字符串看起来好吗:jdbc:sqlserver://xx.xx.x.xxx;数据库名称=警报”,RemoteSQLServerUser,RemoteSQLServerPass
?