sourcetip

JDBC를 사용하여 SQL Server 2008 데이터베이스에 연결하려면 어떻게 해야 합니까?

fileupload 2023. 10. 5. 23:28
반응형

JDBC를 사용하여 SQL Server 2008 데이터베이스에 연결하려면 어떻게 해야 합니까?

로컬 PC에 MSSQL 2008이 설치되어 있고 Java 애플리케이션은 MSSQL 데이터베이스에 연결해야 합니다.저는 MSSQL을 처음 접했는데 자바 애플리케이션에 대한 사용자 로그인을 생성하고 JDBC를 통해 연결하는 데 도움을 받고 싶습니다.지금까지 앱의 사용자 로그인을 만들고 연결 문자열을 따라 사용했지만 전혀 작동하지 않습니다.어떤 도움이나 힌트라도 주시면 감사하겠습니다.

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

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

그런 다음 VM 인수로 sqljdbc_auth.dll에 경로를 추가합니다(빌드 경로에는 여전히 sqljdbc4.jar가 필요함).

jTDS 및 JDBC를 사용하여 Java에서 SQL Server에 연결하는 방법에 대한 간단한 단계별 가이드를 보려면 여기를 살펴보시기 바랍니다.도움이 되길 바랍니다!

다음을 사용할 수 있습니다.

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

mssql server 2008과 jtds도 사용하고 있습니다.제 경우에는 다음과 같은 연결 문자열을 사용하고 있으며 작동합니다.

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

연결에 문제가 있는 경우 포트 1433에서 TCP/IP 수신기를 아직 활성화하지 않은 것이 문제가 될 수 있습니다.빠른 "netstat -an" 명령을 사용하면 수신 중인지 여부를 알 수 있습니다.기본적으로 설치 후 SQL 서버에서는 이 기능을 사용할 수 없습니다.

또한 "sa" 계정에 암호를 설정하고 "sa" 계정을 활성화해야 합니다(해당 계정을 사용하여 연결하려는 경우).

이는 MSSQL 노드에서 "혼합 모드 인증"을 활성화해야 함을 의미합니다.

다음과 같이 사용해 보십시오. jdbc: jtds:sqlserver://127.0.0.1/dotcms; instance= instanceName

어떤 버전의 mssql을 사용하고 있는지 모르겠습니다. expressed edition일 경우 기본 인스턴스는 sqexpress입니다.

SQL Server Browser 서비스가 실행 중인지 확인하는 것을 잊지 마십시오.

SQL 서버 구성을 시도해 볼 수 있습니다.

  1. 1단계: SQL Server 20xx Configuration Manager 열기
  2. 2단계: SQL에 대한 프로토콜을 클릭합니다.SQL 서버 구성에 포함됩니다.그런 다음 TCP/IP를 마우스 오른쪽 단추로 클릭하고 Properties(속성)를 선택합니다.
  3. 3단계: 탭 IP Address, Edit All TCP를 클릭합니다.좌현은 1433입니다.

참고: 모든 TCP 포트는 1433입니다. 마지막으로 서버를 다시 시작합니다.

SQL Server에 연결하는 간단한 Java 프로그램입니다.

참고: 빌드 경로에 sqljdbc.jar를 추가해야 합니다.

// localhost : 로컬 컴퓨터가 서버 역할을 함

// 1433 : SQL 기본 포트 번호

// 사용자 이름 : sa

// password : SQL server management studio 설치 시 사용하는 password 사용 나의 경우 '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();
            }

        }
    }

이거 먹어봐요.

java.sql 가져오기연결;

java.sql 가져오기드라이버 관리자;

java.sql 가져오기결과 집합;

java.sql 가져오기문;

공용 클래스 SQLU까지 {

public void dbConnect( 문자열 db_connect_string, 문자열 db_userid, 문자열 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();
  }    }

공용 정적 공백 메인(String[] args) {

SQLUtil connServer = new SQLUtil();

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

}

}

이거 먹어봐요.

 Class.forName( "net.sourceforge.jtds.jdbc.Driver" );

String url ="Jdbc:jtds:sqlsever://ip/instanceName;instance=instanceName;databseName=dbName;user=yourUser;password=yourpass;";

언급URL : https://stackoverflow.com/questions/2451892/how-do-i-connect-to-a-sql-server-2008-database-using-jdbc

반응형