[Java] [SQL Server] Stellen Sie mit JDBC für SQL Server eine Verbindung zum lokalen SQL Server 2017 her

Ich lasse es als Erinnerung

Umgebung </ b>

Geben Sie ein Werkzeugname Bemerkungen
OS Windows 10 Pro
IDE Pleiades 2018 Verwenden Sie die Vollversion von Java
Java Java8
DB SQL Server 2017 Developer

SQL Server JDBC zum Java-Projekt hinzufügen </ b>

① Laden Sie die entsprechende Version von JDBC herunter ② Entpacken Sie nach "C: \ Programme"

  • Microsoft scheint das Speichern im oben genannten Programmordner zu empfehlen
  • In install.txt im entpackten JDBC angegeben ③ Verschieben Sie die entsprechende JDBC-JAR-Datei in einen beliebigen Ordner im Eclipse-Projekt.
  • Ich habe "mssql-jdbc-7.2.1.jre8.jar" verwendet und "Link zur Datei" erstellt, ohne die Datei zu kopieren. Wählen Sie im Projektexplorer im Kontextmenü Eigenschaften aus (Rechtsklick) für das Projekt, zu dem Sie JDBC hinzufügen möchten. (4) Wählen Sie im Java-Erstellungspfad die Registerkarte "Bibliothek" und klicken Sie auf die Schaltfläche "JAR hinzufügen". ⑤ Wählen Sie den Ordner mit JDBC aus und klicken Sie auf "OK". ⑥ Klicken Sie auf die Schaltfläche "Übernehmen und schließen"

Fehlerdetails </ b>

`com.microsoft.sqlserver.jdbc.SQLServerException: TCP / IP-Verbindung zum Host [Servername], Port 1433 fehlgeschlagen. Fehler: "Verbindung abgelehnt: Verbindung herstellen. Überprüfen Sie die Verbindungseigenschaften, eine Instanz von SQL Server wird auf dem Host ausgeführt, die TCP / IP-Verbindung zum Port ist zulässig und die TCP-Verbindung zu diesem Port wird von der Firewall blockiert. Stellen Sie sicher, dass dies nicht der Fall ist. " ``

Ursache </ b>

Wie beschrieben. In meinem Fall ist der obige Fehler aufgetreten, weil ich die TCP / IP-Kommunikation von SQL Server nicht zugelassen habe.

Lösung </ b>

  • Andere Ursachen werden beschrieben, wenn Zeit verfügbar ist.

(1) Starten Sie SQL Server Configuration Manager mit "SQLServerManager14.msc" im Ausführungsdialog, indem Sie den in Windows + R angezeigten Dateinamen angeben. (2) SQL Server-Konfigurationsmanager> SQL Server-Netzwerkkonfiguration> Wählen Sie das MSSQLSERVER-Protokoll aus, wählen Sie TCP / IP aus und wählen Sie im Kontextmenü die Option Aktivieren (Rechtsklick-Anzeige). (3) Wählen Sie SQL Server (MSSQLSERVER) in SQL Server Configuration Manager> SQL Server-Dienste aus, wählen Sie im Kontextmenü "Neustart" (Rechtsklick-Anzeige) und starten Sie den SQL Server-Dienst neu. ④ Führen Sie den folgenden Code aus

Testcode zur Verbindungsbestätigung

  • Bitte ändern Sie zu einem beliebigen Wert

ConnectURL.java



package testdbconnection;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class ConnectURL {
    public static void main(String[] args) {

        // Create a variable for the connection string.
        String connectionUrl = "jdbc:sqlserver://[servername:[port];databaseName=[dbname];user=[username];password=[password]";

        try (Connection con = DriverManager.getConnection(connectionUrl); Statement stmt = con.createStatement();) {
            String SQL = "SELECT TOP 10 * FROM [tablename]";
            ResultSet rs = stmt.executeQuery(SQL);

            // Iterate through the data in the result set and display it.
            while (rs.next()) {
                System.out.println(rs.getString("[columnname1]") + " " + rs.getString("[columnname2]"));
            }
        }
        // Handle any errors that may have occurred.
        catch (SQLException e) {
            e.printStackTrace();
            System.out.println("can't connectioned");
        }
    }
}

Recommended Posts