① java.sql-Paket --- Importieren und verwenden. Keine besondere Vorbereitung erforderlich. ② JDBC-Treiber --- Java DataBase Connector, Bibliothek. Es besteht aus einer einzelnen JAR-Datei, die Schnittstellen und Klassen zum Verwalten der Datenbank enthält. In diesem Fall wird es im dynamischen Webprojekt von Eclipse verwendet. Platzieren Sie es daher unter WEB-INF / lib (= automatisch zum Klassenpfad hinzugefügt).
-Placed unter / (Paketname) / WebContent / WEB-INF / lib (diesmal hinzugefügt ist mssql-jdbc-6.2.2.jre8.jar).
http://www.codejava.net/java-se/jdbc/connect-to-microsoft-sql-server-via-jdbc Unter Bezugnahme auf Wenn ich versuche, ein Programm auszuführen, das sich mit Windows-Authentifizierung anmeldet com.microsoft.sqlserver.jdbc.SQLServerException: Benutzer konnte sich nicht anmelden. `` Ich habe eine Fehlermeldung erhalten. Als ich versuchte, mich mit SQL-Authentifizierung anzumelden, war die Verbindung mit dem folgenden Code erfolgreich.
package (Paketnamen);
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Practicing {
//Überprüfen Sie, ob der Treiber geladen ist
// public static void main(String[] args) throws InstantiationException,
// IllegalAccessException {
// String msg = "";
// try {
// Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
// msg = "Der Treiber wurde erfolgreich geladen";
// } catch (ClassNotFoundException e){
// msg = "Fehler beim Laden des Treibers";
// }
// System.out.println(msg);
// }
public static void main(String[] args) {
Connection conn = null;
try {
String dbURL = "jdbc:sqlserver://localhost\\sqlexpress";
String user = "sa";
String pass = "*****(Kennwort bei der Installation von SQL Server festgelegt)";
conn = DriverManager.getConnection(dbURL, user, pass);
if (conn != null) {
DatabaseMetaData dm = (DatabaseMetaData) conn.getMetaData();
System.out.println("Driver name: " + dm.getDriverName());
System.out.println("Driver version: " + dm.getDriverVersion());
System.out.println("Product name: " + dm.getDatabaseProductName());
System.out.println("Product version: " + dm.getDatabaseProductVersion());
}
} catch (SQLException ex) {
ex.printStackTrace();
} finally {
try {
if (conn != null && !conn.isClosed()) {
conn.close();
}
} catch (SQLException ex) {
ex.printStackTrace();
}
}
}
}
Ausführungsergebnis:
Nachtrag: Wenn ich dieses Programm eines Tages ausführe, wird folgende Fehlermeldung angezeigt.
com.microsoft.sqlserver.jdbc.SQLServerException: The connection to the host localhost, named instance sqlexpress failed. Error: "java.net.SocketTimeoutException: Receive timed out". Verify the server and instance names and check that no firewall is blocking UDP traffic to port 1434. For SQL Server 2005 or later, verify that the SQL Server Browser Service is running on the host. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:227) at com.microsoft.sqlserver.jdbc.SQLServerConnection.getInstancePort(SQLServerConnection.java:5241) at com.microsoft.sqlserver.jdbc.SQLServerConnection.primaryPermissionCheck(SQLServerConnection.java:1916) at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1669) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1528) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:866) at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:569) at java.sql.DriverManager.getConnection(DriverManager.java:664) at java.sql.DriverManager.getConnection(DriverManager.java:247) at chkJDBC.ListPracticing.main(ListPracticing.java:34)
Wenn Sie in dieser Nachricht "Für SQL Server 2005 oder höher überprüfen, ob der SQL Server-Browserdienst auf dem Host ausgeführt wird" in SQL Server 2005 oder höher verwenden, wird der SQL Server-Browser ausgeführt. Bitte bestätigen Sie das.
Stellen Sie sicher, dass auf dem Dienst sowohl SQL Server (in diesem Fall Instanzname, in diesem Fall SQL EXPRESS) als auch SQL Server Browser ausgeführt werden. Der Server-Browser lief diesmal nicht. Start> Dienste> Anwendbar 2 unten, klicken Sie mit der rechten Maustaste, wenn es nicht "Wird ausgeführt", "Start".
Als ich das Programm erneut ausführte, lief es erfolgreich!