Подтвердить что ты не робот

Как подключиться к базе данных SQL Server 2008 с помощью JDBC?

У меня установлен MSSQL 2008 на моем локальном ПК, и моему Java-приложению необходимо подключиться к базе данных MSSQL. Я новичок в MSSQL, и я хотел бы получить некоторую помощь по созданию пользовательского входа для моего Java-приложения и подключения через JDBC. До сих пор я пытался создать логин для своего приложения и использовал следующую строку подключения, но я вообще не работаю. Любая помощь и подсказка будут оценены.

jdbc:jtds:sqlserver://127.0.0.1:1433/dotcms 
username="shuxer"  password="itarator"
4b9b3361

Ответ 1

Существует два способа использования JDBC - с использованием проверки подлинности Windows и проверки подлинности SQL. Аутентификация SQL, вероятно, самая простая. Что вы можете сделать, это что-то вроде:

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);

после добавления sqljdbc4.jar в путь сборки.

Для проверки подлинности Windows вы можете сделать что-то вроде:

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

а затем добавьте путь к sqljdbc_auth.dll в качестве аргумента виртуальной машины (по-прежнему нужно sqljdbc4.jar в пути сборки).

Пожалуйста, посмотрите здесь для краткого пошагового руководства, показывающего, как подключиться к SQL Server с Java, используя jTDS и JDBC, чтобы вам нужно больше деталей. Надеюсь, это поможет!

Ответ 2

Вы можете использовать this:

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>");
   }
}

Ответ 3

Я также использую mssql server 2008 и jtds.In моём случае я использую следующую строку подключения, и она работает.

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();

Ответ 4

Если у вас возникли проблемы с подключением, скорее всего, проблема в том, что вы еще не включили прослушиватель TCP/IP на порт 1433. Быстрая команда "netstat -an" сообщит вам, если ее прослушивание. По умолчанию SQL Server не включает это после установки.

Кроме того, вам нужно установить пароль в учетной записи "sa", а также ENABLE учетной записи "sa" (если вы планируете использовать эту учетную запись для подключения).

Очевидно, это также означает, что вам нужно включить "аутентификацию в смешанном режиме" на вашем MSSQL node.

Ответ 5

Попробуйте использовать вот так: jdbc: jtds: sqlserver://127.0.0.1/dotcms; Экземпляр = имя_экземпляр

Я не знаю, какую версию mssql вы используете, если это экспресс-версия, экземпляр по умолчанию - sqlexpress

Не забудьте проверить, работает ли служба просмотра SQL Server.

Ответ 6

Вы можете попробовать настроить SQL-сервер:

  • Шаг 1: Откройте SQL Server 20xx Configuration Manager
  • Шаг 2: Нажмите "Протоколы для SQL" в конфигурации SQL-сервера. Затем щелкните правой кнопкой мыши TCP/IP, выберите "Свойства"
  • Шаг 3: Нажмите вкладку IP-адрес, отредактируйте все TCP. Порт - 1433

ПРИМЕЧАНИЕ. ВСЕ TCP-порт - 1433 Наконец, перезапустите сервер.

Ответ 7

Простая Java-программа, которая подключается к SQL Server.

ПРИМЕЧАНИЕ. Вам нужно добавить sqljdbc.jar в путь сборки

//localhost: локальный компьютер действует как сервер

//1433: номер порта SQL по умолчанию

//имя пользователя: sa

//пароль: использовать пароль, который используется во время установки SQL Server Management Studio, в моем случае это "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();
            }

        }
    }

Ответ 8

Попробуй это.

импорт java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.Statement;

открытый класс SQLUtil {

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

пытаться {

     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");

}

}

Ответ 9

Эта примерная программа Java подключается к базе данных MySQL с использованием JDBC, выполняет запрос и извлекает и печатает значение поля базы данных.

Этот же примерный код может использоваться для подключения к любому типу базы данных, все, что вам нужно сделать, это изменить URL-адрес соединения (dbUrl в образце). Чтобы этот код работал правильно, вам нужно загрузить драйвер mysql для JDBC, другими словами, Java Connectors с сайта mysql.com.

Если после загрузки URL-адреса он все еще не работает, возможно, это связано с classpath. Вам нужно будет добавить файл jar-драйвера в путь к классам.

import java.sql.*;
import javax.sql.*;

public class jdbcdemo{

public static void main(String args[]){
String dbtime;
String dbUrl = "jdbc:mysql://your.database.domain/yourDBname";
String dbClass = "com.mysql.jdbc.Driver";
String query = "Select * FROM users";

try {

Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection (dbUrl);
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);

while (rs.next()) {
dbtime = rs.getString(1);
System.out.println(dbtime);
} //end while

con.close();
} //end try

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

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

}  //end main

}  //end class