it-swarm.com.de

Wie verbinde ich mich mit einer SQL Server 2008-Datenbank mithilfe von JDBC?

Ich habe MSSQL 2008 auf meinem lokalen PC installiert und meine Java) - Anwendung muss eine Verbindung zu einer MSSQL-Datenbank herstellen. Ich bin neu bei MSSQL und möchte Hilfe beim Erstellen einer Benutzeranmeldung für meine Java Anwendung und Herstellen einer Verbindung über JDBC. Bisher habe ich versucht, eine Benutzeranmeldung für meine Anwendung zu erstellen und die folgende Verbindungszeichenfolge verwendet, aber ich arbeite überhaupt nicht. Jede Hilfe und jeder Hinweis werden geschätzt.

jdbc:jtds:sqlserver://127.0.0.1:1433/dotcms 
username="shuxer"  password="itarator"
52
taras

Es gibt hauptsächlich zwei Möglichkeiten, JDBC zu verwenden: Windows-Authentifizierung und SQL-Authentifizierung. Die SQL-Authentifizierung ist wahrscheinlich die einfachste. Was Sie tun können, ist etwas wie:

String userName = "username";
String password = "password";

String url = "jdbc:sqlserver://MYPC\\SQLEXPRESS;databaseName=MYDB";

Class.forName("com.Microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection(url, userName, password);

nach dem Hinzufügen von sqljdbc4.jar zum Erstellungspfad.

Für die Windows-Authentifizierung können Sie Folgendes tun:

String url = "jdbc:sqlserver://MYPC\\SQLEXPRESS;databaseName=MYDB;integratedSecurity=true";
Class.forName("com.Microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection(url);

und fügen Sie dann den Pfad zu sqljdbc_auth.dll als VM Argument hinzu (Sie benötigen weiterhin sqljdbc4.jar im Erstellungspfad).

Schauen Sie sich bitte hier um eine kurze Schritt-für-Schritt-Anleitung zu erhalten, die zeigt, wie Sie mit Hilfe von jTDS und JDBC von Java) aus eine Verbindung zu SQL Server herstellen können es hilft!

73
Thusi

Sie können this verwenden:

import Java.sql.Connection;
import Java.sql.DriverManager;
import Java.sql.ResultSet;
import Java.sql.Statement;

public class ConnectMSSQLServer
{
   public void dbConnect(String db_connect_string,
            String db_userid,
            String db_password)
   {
      try {
         Class.forName("com.Microsoft.sqlserver.jdbc.SQLServerDriver");
         Connection conn = DriverManager.getConnection(db_connect_string,
                  db_userid, db_password);
         System.out.println("connected");
         Statement statement = conn.createStatement();
         String queryString = "select * from sysobjects where type='u'";
         ResultSet rs = statement.executeQuery(queryString);
         while (rs.next()) {
            System.out.println(rs.getString(1));
         }
      } catch (Exception e) {
         e.printStackTrace();
      }
   }

   public static void main(String[] args)
   {
      ConnectMSSQLServer connServer = new ConnectMSSQLServer();
      connServer.dbConnect("jdbc:sqlserver://<hostname>", "<user>",
               "<password>");
   }
}
32
Mahmut EFE

Ich benutze auch MSSQL Server 2008 und Jtds.In meinem Fall verwende ich die folgende Verbindungszeichenfolge und es funktioniert.

Class.forName( "net.sourceforge.jtds.jdbc.Driver" );
Connection con = DriverManager.getConnection( "jdbc:jtds:sqlserver://<your server ip     
address>:1433/zacmpf", userName, password );
Statement stmt = con.createStatement();
7
kta

Wenn Sie Probleme beim Herstellen einer Verbindung haben, liegt das Problem höchstwahrscheinlich darin, dass Sie den TCP/IP-Listener auf Port 1433 noch nicht aktiviert haben. Ein kurzer Befehl "netstat -an" teilt Ihnen mit, ob er abhört. Standardmäßig aktiviert SQL Server dies nach der Installation nicht.

Außerdem müssen Sie ein Kennwort für das Konto "sa" festlegen und das Konto "sa" AKTIVIEREN (wenn Sie dieses Konto für die Verbindung verwenden möchten).

Dies bedeutet natürlich auch, dass Sie die "Mixed-Mode-Authentifizierung" auf Ihrem MSSQL-Knoten aktivieren müssen.

6
djangofan

Versuchen Sie, wie folgt zu verwenden: jdbc: jtds: sqlserver: //127.0.0.1/dotcms; instance = instanceName

Ich weiß nicht, welche Version von MSSQL Sie verwenden. Wenn es sich um Express Edition handelt, ist die Standardinstanz sqlexpress

Vergessen Sie nicht, zu überprüfen, ob der SQL Server-Browserdienst ausgeführt wird.

3
user301201

Sie können versuchen, SQL Server zu konfigurieren:

  1. Schritt 1: Öffnen Sie den SQL Server 20xx Configuration Manager
  2. Schritt 2: Klicken Sie in der SQL Server-Konfiguration auf Protokolle für SQL. Klicken Sie dann mit der rechten Maustaste auf TCP/IP und wählen Sie Eigenschaften
  3. Schritt 3: Klicken Sie auf die Registerkarte IP Address, Edit All TCP. Hafen ist 1433

HINWEIS: ALL TCP Port ist 1433. Starten Sie den Server neu.

3

Einfaches Java Programm, das eine Verbindung zum SQL Server herstellt.

HINWEIS: Sie müssen sqljdbc.jar in den Erstellungspfad einfügen

// localhost: Der lokale Computer fungiert als Server

// 1433: SQL-Standardportnummer

// Benutzername: sa

// Passwort: Passwort verwenden, das zum Zeitpunkt der Installation von SQL Server Management Studio verwendet wird. In meinem Fall ist es 'root'.

import Java.sql.Connection;
import Java.sql.DriverManager;
import Java.sql.SQLException;

    public class Conn {
        public static void main(String[] args) throws InstantiationException, IllegalAccessException, ClassNotFoundException {

            Connection conn=null;
            try {
                Class.forName("com.Microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
                conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=company", "sa", "root");

                if(conn!=null)
                    System.out.println("Database Successfully connected");

            } catch (SQLException e) {
                e.printStackTrace();
            }

        }
    }
2
atishr

Versuche dies.

import Java.sql.Connection;

import Java.sql.DriverManager;

import Java.sql.ResultSet;

import Java.sql.Statement;

öffentliche Klasse SQLUtil {

public void dbConnect (String db_connect_string, String db_userid, String db_password) {

versuchen {

     Class.forName("com.Microsoft.sqlserver.jdbc.SQLServerDriver");
     Connection conn = DriverManager.getConnection(db_connect_string,
              db_userid, db_password);
     System.out.println("connected");
     Statement statement = conn.createStatement();
     String queryString = "select * from cpl";
     ResultSet rs = statement.executeQuery(queryString);
     while (rs.next()) {
        System.out.println(rs.getString(1));
     }
  } catch (Exception e) {
     e.printStackTrace();
  }    }

public static void main (String [] args) {

SQLUtil connServer = new SQLUtil ();

connServer.dbConnect ("jdbc: sqlserver: //192.168.10.97: 1433; databaseName = myDB", "sa", "0123");

}

}

0
Kamran