LoginSignup
7
3

More than 1 year has passed since last update.

JDBCでVantageに接続する方法

Last updated at Posted at 2022-10-12

著者 Adam Tworkiewicz
最終更新日 2021年9月8日

警告
本記事はTeradata CorporationのサイトGetting Startedに掲載された内容を抄訳したものです。掲載内容の正確性・完全性・信頼性・最新性を保証するものではございません。正確な内容については、原本をご参照下さい。
また、修正が必要な箇所や、ご要望についてはコメントをよろしくお願いします。

概要

このクイックスタートでは、JDBCを使用してTeradata Vantageに接続する方法を説明します。サンプルJDBCプロジェクトを通して説明します。プロジェクト全体はGitHubhttps://github.com/Teradata/jdbc-sample-appで公開されています。

前提条件

・Teradata Vantageインスタンスにアクセスします。

Vantageの新しいインスタンスが必要な場合は、Google CloudAzureAWSのクラウドにVantage Expressという無料版をインストールすることができます。また、VMwareVirtualBox、またはUTMを使用して、ローカルマシン上でVantage Expressを実行することもできます。

・JDKが必要です
・Mavenが必要です

#ドライバのインストール
Teradata JDBC download pageにアクセスし、ドライバをダウンロードします(zipまたはtarを選択できます)。ウェブサイトは、ファイルをダウンロードする前に、ログイン(アカウントをお持ちでない場合は、最初に登録する必要があります)し、ライセンスに同意するように求めます。

② ドライバを解凍します。

③ ドライバをローカルのMavenリポジトリに追加します。

repogitory_driver
mvn install:install-file \
   -Dfile=terajdbc4.jar \
   -DgroupId=com.teradata \
   -DartifactId=terajdbc4 \
   -Dversion=17.10.00.26 \
   -Dpackaging=jar \
   -DgeneratePom=true

mavenプロジェクトに依存関係を追加する

ローカルリポジトリにjarがあるので、Mavenのpomでjarを依存関係として参照することができます。

repogitory_dependency
    <dependency>
      <groupId>com.teradata</groupId>
      <artifactId>terajdbc4</artifactId>
      <version>17.10.00.26</version>
    </dependency>

画像1.PNG

クエリを送信するコード

この手順では、Vantage データベースが localhost のポート 1025 で利用可能であると仮定しています。ラップトップでVantage Expressを実行している場合、VMからホストマシンにポートを公開する必要があります。ポートを転送する方法については、仮想化ソフトウェアのドキュメントを参照してください。

プロジェクトはセットアップされました。あとはドライバをロードし、接続と認証のパラメータを渡し、クエリを実行するだけです。

slow_query.java
package com.teradata.app;

import java.sql.*;

public class App {
    static final String DB_URL = "jdbc:teradata://localhost";
    static final String USER = "dbc";
    static final String PASS = "dbc";
    static final String QUERY = "SELECT * FROM dbc.dbcinfo";

    public static void main(String[] args) {
        App app = new App();
        app.query();
    }

    public void query() {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;

        // Open a connection
        try {
            conn = DriverManager.getConnection(DB_URL, USER, PASS);
            stmt = conn.createStatement();
            rs = stmt.executeQuery(QUERY);

            // Extract data from result set
            while (rs.next()) {
                System.out.println(String.format("setting: %s, value: %s", rs.getString(1), rs.getString(2)));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            if (rs != null) {
                try {
                    rs.close();
                } catch (SQLException e) { /* Ignored */}
            }
            if (stmt != null) {
                try {
                    stmt.close();
                } catch (SQLException e) { /* Ignored */}
            }
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException e) { /* Ignored */}
            }
        }
    }
}

画像2.PNG

まとめ

このクイックスタートでは、JDBCを使用してTeradata Vantageに接続する方法について学びました。最新のJDBCドライバをインストールし、Mavenをビルドツールとして使用したJavaアプリケーションで使用する手順を説明しました。

さらに詳しく

Teradata JDBC Driver Reference

Teradata Vantageへのお問合せ

Teradata Vantage へのお問合せ

7
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
3