我正在一个项目中,我需要将Eclipse IDE conenct到SQLServer数据库。我下载和进口在Eclipse中的.jar SQLJBDC驱动程序文件,并把下面的代码在我的课:连接SQL服务器2012年 - Eclipse的霓虹灯
`import java.sql.*;
import java.sql.DriverManager;
public class connexion {
// Méthode permettant d'enregistrer des données dans la base de données
public static void rempli() {
String url = "jdbc:sqlserver://localhost:1433;databaseName=Tunnel" ;// le chemin vers le serveur de BD et la base de données
String user = "sa"; // Nom d'un utilisateur de la base de données
String pass = "*********"; // Son mot de passe
Connection cn = null; // Déclaration d'un objet de type connection, il permet d'utiliser une méthode de connexion
Statement st = null; // Déclaration d'un objet Statement. il permet d'envoyer des requêtes
try {
//Etape 1 : Chargement du driver
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
//Etape 2 : récupération de la connexion
cn = DriverManager.getConnection(url, user, pass);
}
catch (SQLException | ClassNotFoundException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
rempli();
}
}`
当我启动了程序,我有近20秒后如下回答:
com.microsoft.sqlserver.jdbc.SQLServerException: Échec de la connexion TCP/IP à l'hôte localhost, port 1433. Erreur : « Connection refused: connect. Vérifiez les propriétés de connexion. Assurez-vous qu'une instance de SQL Server est en cours d'exécution sur l'hôte et accepte les connexions TCP/IP au port. Vérifiez que les connexions TCP au port ne sont pas bloquées par un pare-feu. ».
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:191)
at com.microsoft.sqlserver.jdbc.SQLServerException.ConvertConnectExceptionToSQLServerException(SQLServerException.java:242)
at com.microsoft.sqlserver.jdbc.SocketFinder.findSocket(IOBuffer.java:2369)
at com.microsoft.sqlserver.jdbc.TDSChannel.open(IOBuffer.java:551)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1963)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1628)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1459)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:773)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1168)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at connexion.rempli(connexion.java:21)
at connexion.main(connexion.java:32)
我停用了我的防火墙,授权访问不同端口上的TPC,我现在不知道该怎么做。谁能帮我?
谢谢你的帮助!
你有没有尝试Telnet来检查你可以连接到本地端口1433上的数据库? –
我的法语太糟糕了,无法理解整个错误消息,但您是否在SqlServer上启用了TCP?如果我没有记错,TCP默认情况下... – Ben
禁用是的,我检查了这一切,并在防火墙,但仍然有此错误信息...... – Carlito1895