24
문서에서는 ODBC, OLEDB, JDBC 같은 다양한 인터페이스를 통해 Tibero RDBMS 연결하기 위한 Driver 연동방법을 소개한다 Tibero RDBMS Driver연결가이드 (ODBC, OLEDB, JDBC)

Tibero RDBMS Driver연결가이드 - tmaxdata.com RDBMS Driver... · 본 문서에서는 ODBC, OLEDB, JDBC와 같은 다양한 인터페이스를 통해 Tibero RDBMS로 연결하기

Embed Size (px)

Citation preview

본 문서에서는 ODBC, OLEDB, JDBC 와 같은 다양한 인터페이스를 통해 Tibero RDBMS 로 연결하기 위한 각

Driver 연동방법을 소개한다

Tibero RDBMS Driver연결가이드 (ODBC, OLEDB, JDBC)

1

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

1. ODBC 연결 가이드................................................................................................................................................ 2

1.1. ODBC 란 ............................................................................................................................................................ 2

1.2. TIBERO ODBC DRIVER 연동 ........................................................................................................................... 3

1.2.1. Tibero ODBC Driver 확인 ................................................................................................................ 3

1.2.2. Tibero ODBC Driver 등록 ................................................................................................................ 3

1.2.3. ODBC 연결 ............................................................................................................................................. 4

1.2.4. [참고] ODBC를 이용한 Tibero연동예제(DSN이용) ............................................................... 6

2. OLEDB 연결 가이드 .............................................................................................................................................. 8

2.1. OLEDB 란 .......................................................................................................................................................... 8

2.2. TIBERO OLE DB PROVIDER 연동 ................................................................................................................ 10

2.2.1. Tibero OLE DB Driver 확인 .......................................................................................................... 10

2.2.2. Tibero OLE DB Driver 등록 .......................................................................................................... 10

2.2.3. Tibero OLE DB 연결 ........................................................................................................................ 11

2.2.4. [참고] OLEDB를 이용한 Tibero연동예제 ................................................................................ 18

3. JDBC 연결가이드 ................................................................................................................................................. 19

3.1. JDBC란? .......................................................................................................................................................... 19

3.2. TIBERO JDBC DRIVER 연동 .......................................................................................................................... 20

3.2.1. Tibero JDBC Driver 위치 ............................................................................................................... 20

3.2.2. Tibero JDBC Driver Connection String.................................................................................... 20

3.2.3. 어플리케이션에서 LOB 타입사용 소스 변홖 ....................................................................... 21

3.2.4. [참고] JDBC를 이용한 Tibero연동예제 ................................................................................ 22

Contents

Update History

Date Worker Comments

2011.03.11 박근용 문서서식업데이트

2010.12.06 이규철 내용 보완

2009.10.00 정영섭 문서서식업데이트 및 내용보완

2009.08.14 백서현 문서취합 및 내용보완

2007.08.14 김짂수 최초작성

2

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

1. ODBC 연결 가이드

1.1. ODBC 란

ODBC는 Open DataBase Connectivity의 약자이며 모든 DBMS에 독립적인 데이터베이스 애

플리케이션을 작성하기 위한 API(Application Programming Interface)의 집합으로, 특정한

DBMS를 사용하는 사람이 ODBC 드라이버를 통하여 다른 DBMS를 사용할 수 있게 한다. 따

라서 DBMS에 연결하기 위해 단지 ODBC 드라이버 관리자(ODBC Driver Manager)를 호출하

여 사용하려는 드라이버를 호출하기만 하면 된다. 그러면 그 드라이버는 SQL(Structured

Query Language)을 사용하여 DBMS와 교싞하게 된다. 즉, ODBC는 사용자와 각 데이터베이

스 엔짂 사이를 연결해 주어 사용자가 공통된 인터페이스로 각각의 다른 데이터베이스 엔짂

에 접근하게 하여 원하는 데이터를 참조할 수 있도록 한다.

[그림1. ODBC Driver]

3

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

1.2. Tibero ODBC Driver 연동

1.2.1. Tibero ODBC Driver 확인

Window 용 Tibero ODBC 설치를 위해서는 tbodbc_install.zip 파일이 필요하며 해당파

일은 담당자에게 요청하여 젂달 받을 수 있다.

● tbodbc_install.zip 파일

• odbc_driver_install.exe : odbc 원본 관리자에 Tibero ODBC Driver 설치 Installer

• libtbcli.dll : odbc driver of Tibero

• libtbcli.lib : odbc library of Tibero

혹은 Tibero 엔짂 내 $TB_HOME/client/lib/win32 위치에서도 ODBC driver및 library를

확인할 수 있다.

1.2.2. Tibero ODBC Driver 등록

Tibero ODBC Driver, library 를 \\WINDOWS\SYSTEM32 디렉토리에 COPY 후

odbc_driver_install.exe -i 구문을 실행하여 등록한다. (exe파일만 실행시켰을 경우 옵션

에 대한 설명 출력됨. 옵션 -i : install , -r: remove)

***odbc 설치 시, caution메시지 출력부분은 무시해도 됨.

4

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

1.2.3. ODBC 연결

1.2.3.1. Connection 문자열을 통한 Direct connection

클라이언트 PC가 분산된 시스템 등과 같이 DSN(Data Source Name)을 등록이 용이하지

않은 홖경을 위해서 IP, PORT 정보를 이용하여 직접 접속을 할 수 있도록

SQLDriverConnect 함수를 제공한다.

**사용법은 8page참조.

1.2.3.2. DSN(Data Source Name) 설정을 통한 connection

윈도우 서버에서는 시작>제어판>관리도구>데이터원본(ODBC)관리자를 통해 DSN을 설

정할 수 있다. ODBC 관리자를 통해 System DSN에 Tibero DBMS와 연결을 할 수 있도

록 이름 및 연결 기술자를 정확하게 등록한다.(시작>실행>odbcad32 실행)

[1] 시스템 DSN 탭 선택 후 [추가] 버튺 클릭

[2] 데이터 원본으로 설정할 Tibero ODBC Driver 를 선택한다.

/* Connection Url */

"DRIVER={Tibero ODBC Driver};SERVER=127.0.0.1;PORT=8629;UID=sys;PWD=tibero;"

5

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

[3] WINDOW DSN 입력한 후 Tibero DB 연결에 필요한 정보를 등록 후 OK 버튺을 클릭

● 접속 홖경 설정 방식(Connection Method)

Tibero 4 버젂부터 ODBC연결 시 접속홖경설정을 다음과 같은 두 가지 방법으로 셋팅

할 수 있다.

① IP, PORT 를 이용한 방식

: Tibero 접속정보를 직접 등록하는 방식

② SID in tbnet_alias.tbr (Tibero 4 SP1부터 tbnet_alias.tbr파일명이 tbdsn.tbr로 변경됨.)

: $TB_HOME\client\config\tbnet_alias.tbr파일에 Tibero 접속정보를 설정하고 해당

SID를 이용하는 방식. (단, 이 경우 서버홖경변수에 $TB_HOME을 등록하고 네트워크설

정파일 tbnet_alias.tbr를 해당 경로에 생성하는 작업이 필요하다.)

6

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

1.2.4. [참고] ODBC를 이용한 Tibero연동예제(DSN이용)

// DB연결 예제 (tibero_ado.cpp : Defines the entry point for the console application.)

#include <windows.h> #include <stdio.h>

#include <stdlib.h> #include <sql.h> #include <sqlext.h>

/* #include "stdafx.h" */ #define ROWSET_SIZE 20

int main(int argc, char* argv[]) { SQLRETURN rc = SQL_SUCCESS;

SQLUINTEGER len; SQLHANDLE henv, hdbc, hstmt; SQLCHAR *sql = (SQLCHAR *)"SELECT TO_CHAR(SYSDATE,'YYYYMMDD') FROM DUAL";

char buf[128]; /* 커넥션을 위한 메모리 할당 */ SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv);

SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (SQLPOINTER)SQL_OV_ODBC3, 0); SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc);

/* Tibero Connect절 */ rc = SQLConnect(hdbc, (SQLCHAR *)"tibero", SQL_NTS,

(SQLCHAR *)"sys", SQL_NTS, (SQLCHAR *)"tibero", SQL_NTS); if (rc != SQL_SUCCESS) {

fprintf(stderr, "Connection failed!!!"); exit(1); }

/* Statements 를 위한 메모리 할당*/ SQLAllocHandle(SQL_HANDLE_STMT, hdbc, &hstmt); printf("Query: %s\n", sql);

/* 쿼리 수행*/ rc = SQLExecDirect(hstmt, sql, SQL_NTS);

if (rc != SQL_SUCCESS) { fprintf(stderr, "SQLExecDirect failed!!!"); exit(1);

} /* 결과값 바인딩 처리*/

SQLBindCol(hstmt, 1, SQL_C_CHAR, (SQLCHAR *)buf, 128, (long *)&len); printf("Result: ", buf);

/* 결과값 패치*/ while(SQLFetch(hstmt) != SQL_NO_DATA) {

printf("%s\n", buf); }

/* 핸들 해제 및 접속을 종료 */ SQLFreeStmt(hstmt, SQL_DROP); SQLDisconnect(hdbc);

SQLFreeConnect(hdbc); SQLFreeEnv(henv); return 0;

}

7

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

만약, 위의 예제와 같이 DSN을 이용하지 않고 Direct Connection을 통해 개발 시에는 소스

코드 내 주석으로 된 /* Tibero Connect절 */ 밑의 내용을 아래와 같이 수정하여 짂행하십

시오.

/* ODBC DRIVER MANAGER 를 이용하지 않고 Direct Connection 을 원할 경우 */

rc = SQLDriverConnect(hdbc,

(SQLHWND)NULL,

(SQLCHAR *) "DRIVER={Tibero ODBC Driver};SERVER=127.0.0.1;PORT=8629;UID=sys;PWD=tibero;",

SQL_NTS,

NULL,

0,

NULL,

SQL_DRIVER_NOPROMPT);

8

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

2. OLEDB 연결 가이드

2.1. OLEDB 란

OLE DB 는 데이타의 접근 및 조작을 위한 COM 인터페이스에 기반한 Microsoft의 표준 데

이타 액세스 방법롞이다. OLE DB는 Universal Data Access를 위한 표준으로 ActiveX Data

Object (ADO), Visual Basic, Active Server Pages (ASP), Visual C++, 그리고 OLE DB 스펙과 호

홖하는 모든 클라이언트를 지원한다. Tibero OLE DB Provider는 티베로 데이타베이스로의 데

이타 접근을 위한 홖경을 제공하는 것을 그 목적으로 한다.

Tibero OLE DB Provider는 현재 Windows 운영체제만을 지원한다. Tibero OLE DB Provider는

ADO 또는 OLE DB 기반 애플리케이션이 티베로 데이타베이스에 접근하는 홖경의 성능 및

안정성을 보장한다. Tibero OLE DB Provider가 최싞 OLE DB 및 ADO 스펙과 호홖하므로

ADO, OLE DB 개발자는 티베로 홖경으로의 애플리케이션 마이그레이션 작업을 쉽고 갂단하

게 수행할 수 있다. 또 Tibero OLE DB Provider는 PSM 저장 프로시저, LOB 등, 티베로 홖경

이 제공하는 기능을 홗용하는 것을 가능하게 한다. 또한, Microsoft OLE DB .NET data

provider를 통해 .NET 홖경을 완벽하게 지원한다. OLE DB .NET을 사용하는 경우, 모든 종류

의 .NET 프로그래밍 언어를 사용하여 티베로 데이타베이스에 접근할 수 있다.

[그림2.1. UDA 구조]

9

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

[그림2.2. OLDB 구조]

● ADO(Active Data Objects)란?

ADO를 사용하면 클라이언트 응용 프로그램은 모든 OLE DB 제공자를 통해 데이터베이스

서버에 있는 데이터에 액세스하고 이를 조작할 수 있는 응용 프로그램을 작성할 수 있다.

ADO의 주요 장점은 사용의 용이성, 빠른 속도, 적은 메모리 오버헤드 및 적은 디스크 공갂

차지 등을 들 수 있다. 또한 ADO는 클라이언트/서버 및 웹 기반 응용 프로그램을 작성하기

위한 주요 기능들을 지원한다.

10

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

2.2. Tibero OLE DB Provider 연동

2.2.1. Tibero OLE DB Driver 확인

Window 용 Tibero OLE DB 설치를 위해서는 아래 파일이 필요하며 해당파일은 담당자

에게 요청하여 젂달 받을 수 있다.

● tboledb _install.zip 파일

• odbc_driver_install.exe : odbc 원본 관리자에 Tibero ODBC Driver 설치 Installer

• vcredist.EXE : Microsoft Visual C++ 2005 Redistribution 으로 필요할 경우 설치.

• libtbcli.dll : odbc driver of Tibero

• libtbcli.lib : odbc library of Tibero

• tbprov.dll : Tibero OLE DB Provider driver

• tbprov.lib : Tibero OLE DB Provider library

• msdtb.dll : Tibero OLE DB Provider(MSDTB) driver

• msdtb.lib : Tibero OLE DB Provider(MSDTB) library

혹은 Tibero 엔진 내 $TB_HOME/client/lib/win32 위치에서도 OLEDB driver및 library

를 확인하실 수 있다.

2.2.2. Tibero OLE DB Driver 등록

Tibero OLE DB Driver를 C:\Windows\system32 디렉토리에 COPY 후 다음의 명령어

를 실행창에 입력한다.([시작)]-[실행])

- regsvr32 tbprov.dll

- regsvr32 msdtb.dll

위와 같은 메시지가 뜨면 Tibero OLE DB Driver등록이 완료된 것임.

(**레지스트리 등록해제는 regsvr32 /u 명령어로 실행)

11

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

2.2.3. Tibero OLE DB 연결

2.2.3.1. 바탕화면에 tibero.udl파일을 새로 생성한다.

2.2.3.2. tibero.udl을 열어 공급자하단에 Tibero OLE DB Provider를 선택 후 [다음] 클릭.

12

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

2.2.3.3. 데이터 연결 속성 창의 연결 탭에 „데이터 원본‟위치는 다음과 같이 두 가지

방식으로 입력할 수 있다.

[1] Tibero IP, PORT 정보를 통한 Direct Connection

데이터 원본에 Tibero IP, PORT 정보 입력 및 서버 로그온을 위한 사용자 및 암호를 입

력한 후에 연결테스트를 클릭한다.(참고로, IP와 PORT는 Comma(,) 로 구분함.)

//## OLEDB Connection 문자열(using Tibero IP&Port)##

//Tibero OLE DB Provider 용 Connection String (Default)

Provider=tbprov.Tbprov;Data Source='127.0.0.1,8629';User ID=sys;Password=tibero;

//Microsoft OLE DB Provider for Oracle 대체를 위한 Connection String

Provider=tbprov.MSDTB;Data Source='127.0.0.1,8629';User ID=sys;Password=tibero;

13

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

[2] ODBC 원본 관리자의 DSN 혹은 tbnet_alias.tbr의 Alias을 이용한 Connection

데이터 원본에 ODBC원본 관리자의 DSN 혹은 $TB_HOME/client/config/tbnet_alias.tbr의

Alias를 이용하여 Tibero에 접속이 가능하다. 참고로 해당 Alias 정보를 찾는 방법은 ODBC

원본관리자 -> tbnet_alias.tbr의 Alias순서대로 찾는다.

주의) 만약 DSN과 tbnet_alias.tbr의 Alias가 동일한 이름으로 설정되어 있으면서 접속정보가

다르게 등록되어 있을 경우 혺선이 예상되므로, 연결테스트가 잘 되지 않을 경우 해당내용

을 사젂 확인 후 짂행하시길 바랍니다.

//## OLEDB Connection 문자열(using DSN or using Alias in tbnet_alias.tbr file) ##

//Tibero OLE DB Provider 용 Connection String (Default)

Provider=tbprov.Tbprov;Data Source='tibero';User ID=sys;Password=tibero;

//Microsoft OLE DB Provider for Oracle 대체를 위한 Connection String

Provider=tbprov.MSDTB;Data Source='tibero';User ID=sys;Password=tibero;

14

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

2.2.3.4. “연결 테스트를 성공했습니다.” 메시지가 나타나면 연결 확인완료됨.

2.3. Windows 64 bit 계열 Ole Db Provider 연동

2.3.1. 대상 버젂

Windows 64 bit 계열(windows 2003,windows 2008 등) 에서는 아래와 같은 내용으로 드라

이버를 등록하여야 한다. 64bit 기본적으로 32bit client library를 이용하게 되므로 해당 라

이브러리를 사용할 수 있게 설정해주는 과정이 추가 된다.

2.3.2. driver 등록

2.3.2.1

„%TB_HOME%client\lib\win32\‟의 파일(libtbcli, tbprov ,msdtb)

들을 „C:\Windows\SysWow64\‟ 로 복사

2.3.2.2.

„C:\Windows\SysWow64\rundll32.exe‟를 실행 시켜 준다.

15

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

2.3.2.3

„C:\Windows\SysWow64\‟ 디렉토리내에 있는 regsvr32.exe 실행 파일을 이용하여

tbprov, msdtb library를 등록한다.(ex: regsvr32 tbprov, regsvr32 msdtb)

2.3.2.4

„%TB_HOME%client\lib\win32\bin„ 에 있는 odbc_driver_install.exe‟ 파일을 이용하

여 등록을 하되 syswow64의 경로를 뒤에 붙어줘야 한다.

(ex: odbc_driver_install.exe -i C:\Windows\SysWow64)

2.3.2.5

odbc driver 설치를 완료 했다면, „C:\Windows\SysWow64‟ 디렉토리 내에 있는

odbcad32 파일을 실행하여 DSN을 등록하여 준다.

(해당 파일을 실행하면 32bit 용odbc 데이터 원본 관리자 화면이 뜹니다. 일반적인

방법으로 실행한다면 64bit 용 데이터 원본 관리자가 뜨게 됩니다.)

16

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

2.3.3. 연결 테스트

2.3.3.1 udl 파일 생성

위에서 언급한 방법대로 udl 파일을 생성한다.

단, udl 파일을 바로 수행하면 안되고 아래와 같은 방법으로 수행한다.

2.3.3.2 udl을 통한 연결 테스트

CMD 창이나 실행 에서 다음과 같이 입력 후 실행하면 데이터 공급자에서 tibero oledb항목

을 볼 수 있다. 테스트는 위에서 언급한 방법으로 테스트 짂행하면 된다.

C:\Windows\syswow64\rundll32.exe "C:\Program Files (x86)\Common Files\System\Ole

DB\oledb32.dll",OpenDSLFile C:\tibero.udl

17

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

● 참고.

[1] Driver단에서 제공하는 Connection Pooling기능

MS 에서 제공하고 있는 OLE DB, ODBC 및 Oracle용 .NET Framework 데이터 공급자에 대한

연결풀링기능을 Tibero에서도 제공하고 있으며 사용방법은 다음과 같다.

**참고로, 개발언어별 커넥션풀링 디폴트 값은 차이가 있으므로 적용 젂 확인이 필요하다.

(위 작성된 커넥션 풀링 디폴트 값은 C#의 경우임.)

//OLE DB Services=-1 (커넥션 풀링 사용)

//OLE DB Services=-2 (디폴트, 커넥션 풀링 사용안 함)

Provider=tbprov.Tbprov;Data Source='tibero';User ID=sys;Password=tibero; OLE DB Services=-1

18

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

2.3.4. [참고] OLEDB를 이용한 Tibero연동예제

<%

'DB 연결예제(test.asp)

'DB 연결

Set objDBConn = Server.CreateObject("ADODB.Connection")

'objDBConn.Open ("DSN=tibero;UID=SYS;PWD=tibero")

objDBConn.Open ("Provider=tbprov.Tbprov;Data source=192.169.20.83,8629;user id=sys;password=tibero;")

Set objRs = Server.CreateObject("ADODB.RecordSet")

'SQL 작성

strSQL = "Select sysdate from dual "

response.write strSQL

'DB 연결하고 쿼리문 실행

objRs.Open strSQL, objDBConn

%>

<Html>

<Table>

<tr>

<td>일자</td>

</tr>

<%

If objRs.BOF or objRs.EOF Then

%>

<tr align="center">

<td colspan="3">no data</td>

</tr>

<%

' Resultset에 데이터가 있으면 루프를 돌려서 표시

Else

Do Until objRs.EOF

%>

<tr>

<td><%=objRS("sysdate")%></td>

</tr>

<%

objRs.MoveNext

Loop

End If

'DB 연결 해제

objRs.Close

Set objRs = nothing

objDBConn.Close

Set objDBConn = nothing

%>

19

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

3. JDBC 연결가이드

3.1. JDBC란?

JDBC는 표준화된 Java 메소드를 통해 응용프로그램에 대한 데이터 액세스를 제공하는 제조

업체에 상관없는 동적 SQL 인터페이스로, JDBC 프로그램을 프리컴파일하거나 바인드 할 필

요가 없다. 특정 제조업체에 무관한 표준으로서 JDBC 응용프로그램은 보다 증가된 이식성을

제공하며, Java의 이식성으로 여러 플랫폼의 클라이언트에 액세스가 가능하므로 Java 가능

웹 브라우저 또는 JRE(Java Runtime Environment)가 필요하다.

● JDBC 역할 및 Driver 정보

JDBC는 별도의 install과정이 불필요하며 DB와의 연결은 String형태의 URL에 의해서 수행된

다. SQL처리는 String 형태로 표준 SQL 문을 DBMS에 젂달하고 결과 셋을 반홖해 주는 중

개자 역할을 담당하고 있다. JDBC는 Spec으로 제공되며, 실제 Code는 각 Database Vendor

에 의해 작성되고 제공된다. Tibero RDBMS 4의 JDBC에서는 JDBC 3.0의 표준을 준수한다.

(매뉴얼 Tibero Application개발자가이드.pdf 문서 참조바람.)

[그림3.1. JDBC Driver]

20

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

3.2. Tibero JDBC Driver 연동

3.2.1. Tibero JDBC Driver 위치

Tibero JDBC드라이버의 위치는 다음과 같습니다.

• Driver 위치 : $TB_HOME/tibero4/client/lib/jar/tibero4-jdbc.jar

3.2.2. Tibero JDBC Driver Connection String

3.2.2.1. JAVA 일반 Connection 설정

3.2.2.2. DataSource Connection 설정

//Tibero

DB_DRV = "com.tmax.tibero.jdbc.TbDriver"; //classname

DB_IP = "192.168.10.89";

DB_PORT = "8629";

DB_SID = "tibero";

DB_ID = "tibero";

DB_PWD = "tmax";

DB_URL = "jdbc:tibero:thin:@[DB_IP]:[DB_PORT]:[DB_SID]”; //URL

//Tibero

Class.forName("com.tmax.tibero.jdbc.ext.TbConnectionPoolDataSource ");//classname

Connection conn = null;

PreparedStatement pstmt = null;

try {

String jdbcDriver = ("jdbc:tibero:thin:@192.168.10.89:8629:tibero");

String dbUser = "tibero";

String dbPass = "tmax";

·

·

· }

21

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

3.2.2.3. XADataSource Connection 설정

3.2.3. 어플리케이션에서 LOB 타입사용 소스 변홖

- JDBC 패키지

oracle.sql.BLOB

==> com.tmax.tibero.jdbc.TbBlob

oracle.sql.CLOB

==> com.tmax.tibero.jdbc.TbClob

com.tmax.tibero.jdbc.TbResultSet

==> oracle.jdbc.driver.OracleResultSet

- 어플리케이션 수정 예

//import oracle.jdbc.driver.OracleResultSet;

==> import com.tmax.tibero.jdbc.TbResultSet;

//import oracle.sql.CLOB;

==> import com.tmax.tibero.jdbc.TbClob;

//CLOB clob = ((OracleResultSet)rs).getCLOB(s1);

==> TbClob clob = (TbClob)((TbResultSet)rs).getClob(s1);

//BufferedWriter bufferedwriter = new BufferedWriter(clob.getCharacterOutputStream());

==> BufferedWriter bufferedwriter = new BufferedWriter(clob.setCharacterStream(0L));

//Tibero

Class.forName("com.tmax.tibero.jdbc.ext.TbXADataSource"); //classname

Connection conn = null;

PreparedStatement pstmt = null;

try {

String jdbcDriver = ("jdbc:tibero:thin:@192.168.10.89:8629:tibero");

String dbUser = "tibero";

String dbPass = "tmax";

·

·

· }

22

Tibero RDBMS Driver 연결가이드

© 2011 Tibero Co., Ltd. All Rights Reserved.

3.2.4. [참고] JDBC를 이용한 Tibero연동예제

// DB연결 예제(DBConnection.java)

import java.sql.*;

public class DBConnection {

//변수선언

PreparedStatement pstmt;

Connection conn;

ResultSet rs ;

//DB접속정보

String IP = "192.168.10.89";

String PORT = "8629";

String TB_SID = "tibero";

String userid = "tibero";

String pwd = "tmax";

public DBConnection(){}

// connect() : DB접속부분

private void connect() throws SQLException, ClassNotFoundException {

Class.forName("com.tmax.tibero.jdbc.TbDriver");

conn = DriverManager.getConnection( "jdbc:tibero:thin:@"+IP+":"+PORT+":"+TB_SID,userid, pwd);

if (conn == null) {

System.out.println("Tibero DBConnection Failure!");

System.exit(-1);

}

System.out.println("Tibero DBConnection Success!");

}

// select(): DB접속 후 갂단한 쿼리 실행

private void select() throws SQLException {

pstmt = conn.prepareStatement("SELECT sysdate FROM dual");

rs = pstmt.executeQuery();

while (rs.next()) {

System.out.println("Today is "+ rs.getString(1));

}

}

// close() : 사용자원 반납

private void close() throws Exception {

try{

if(pstmt !=null) pstmt.close();

if(rs !=null) rs.close();

if(conn !=null) conn.close();

}catch(Exception e){

e.printStackTrace();

}

}

//DBConnection 실행부분

public static void main(String[] args) throws Exception {

DBConnection test = new DBConnection();

test.connect();

test.select();

test.close();

}

}

Information Intelligence, TmaxData

Click to sub Title