Java – SQL Server on Linux に接続する方法 on Ubuntu No.5

自己投資の一つとしてチャレンジしている Programming の Java の独習状況を Blog で公開しています。今回はSQL Server に接続する方法について紹介します。

▼1. SQL Server on Linux の概要

Microsoft が提供している Relational Database (RDB)。以前は Windows OS 上でのみ動作する SQL Server を提供しましたが、現在では Linux 上でも動作する SQL Server も提供しています。
検証用に 180 日間無料で利用できる Evaluation Edition が提供されています。


▼2. SQL Server on Linux に接続する方法

2-1. SQL Server on Linux をインストール

クイック スタート:Ubuntu に SQL Server をインストールし、データベースを作成する を参考に SQL Server on Linux をインストールします。詳細はドキュメントを参照ください。

2-2. Microsoft JDBC Driver x.x for SQL Server をインストール

Microsoft JDBC Driver for SQL Server のリリース ノート を参考に Microsoft JDBC Driver x.x for SQL Server (tar.gz) をインストールします。

tar –zxvf ./sqljdbc_x.x.x.x_enu.tar.gz のコマンドで解凍し、sqljdbc_x.x/enu/ にある mssql-jdbc-x.x.x.jre8.jar, mssql-jdbc-x.x.x.jre11.jar, mssql-jdbc-x.x.x.jre13.jar の library を JDK の version に合わせ利用します。具体的には IntelliJ の File –> Project Structure –-> Libraries にて + をクリックし、上で解凍した Java の library を指定します。

2-3. SQL Server on Linux に接続

データベースへの単純な接続を行う を参考に接続文字列を設定しました。データベースは事前に作成した TestDB を利用し、SQL Server インストール時に作成した管理ユーザー sa と、そのパスワードを指定しています。

import java.sql.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;


public class ConnectionSQLSrv {
    private static final Logger log = LoggerFactory.getLogger(ConnectionSQLSrv.class);
    public static void main(String[] args){
        Connection con = null;
        try{
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            String connectionUrl = "jdbc:sqlserver://localhost:1433;" + "databaseName=TestDB;user=sa;password=password1234;";
            con = DriverManager.getConnection(connectionUrl);
            log.info("Connect to SQL Server successfully");
        }catch(ClassNotFoundException e){
            log.error("Error Message: ",e);
        }catch(SQLException se){
            log.error("Error Messages: ",se);
        }finally{
            try{
                if (con != null) {
                    con.close();
                    log.info("The connection is closed");
                }
            }catch(SQLException sec){
                log.error("Error MEssages of fin ",sec);
            }
        }

    }
}

エラーなく実行した結果が以下

[main] INFO ConnectionSQLSrv – Connect to SQL Server successfully
[main] INFO ConnectionSQLSrv – The connection is closed


▼3. 参考情報

以上です。参考になりましたら幸いです。



コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です