본문 바로가기
IT/Knowledge

JDBC / ODBC 차이

by 성준하이 2023. 2. 24.
반응형

JDBC (Java Database Connectivity)

Java에서 DB에 접근하여 데이터 조회, 삽입, 수정, 삭제를 가능케하는 것을 말한다.

다시말해 Java가 Database를 사용할 수 있도록 연결해주는 응용프로그램 인터페이스인 Java API 이다.

이 응용프로그램 인터페이스는 데이터베이스 관리 시스템에 넘겨질 SQL 형태의 데이터베이스 접근요구 문장을, 각 시스템에 맞도록 바꾸는 역할을 하고 API는 동적으로 올바른 Java 패키지를 로드하고, JDBC 드라이버 매니저에 등록하기 위한 메커니즘을 제공한다.

JDBC connection는 명령문을 만들고, 실행하는 것을 지원한다.

JDBC란 Java에서 DataBase와 연결하여 작업하기 위해서
Java와 연동되는 DBMS(ex. MySQL)에 따라 그에 맞는 JDBC(ex. MySQL Connector)를 설치할 필요가 있다.


ODBC (Open DataBase Connectivity)

ODBC는 데이터베이스를 액세스하기 위한 표준 개방형 응용 프로그램 인터페이스를 말한다.

​Windows Server 에서 데이터베이스를 이용하시다 보면 다른 데이터베이스(ORACLE, MySQL 등등)와 연동이 필요할때 사용하게 되는것이 ODBC 이다.

각 데이터베이스의 차이는 ODBC 드라이버에 의해서 흡수되기 때문에 유저는 ODBC에 정해진 순서에 따라서 프로그램을 쓰면 접속처의 데이터베이스가 어떠한 데이터베이스 관리 시스템에 관리되고 있는지 의식할 필요 없이 접근할 수 있다는 것이 특징이다.

 

이를 위해서는 ODBC 소프트웨어 외에, 액세스할 각 데이터베이스마다 별도의 모듈이나 드라이버가 필요하다.

 

 

 

ODBC는 응용프로그램(ex. HeidiSQL, SQLyog)에서 데이터 접근 할 때
어떠한 DBMS(ex. Oracle, MySQL, MariaDB)에 의해 관리되고 있는지 의식할 필요가 없다.


  ODBC JDBC
사용목적 응용프로그램에서 데이터에 접근할 때 Java에서 DataBase와 연결하여 작업하기 위해서
DBMS
종류에 따라
접속처의 데이터베이스가 어떠한 DBMS에 의해
관리되고 있는지 의식할 필요가 없다.
Java와 연동되는 DBMS에 따라
그에 맞는 JDBC를 설치할 필요가 있다.

 

반응형

'IT > Knowledge' 카테고리의 다른 글

배치와 데몬의 차이  (36) 2023.03.08
cassandra란?  (25) 2023.03.04
DBeaver  (11) 2023.02.23
L4 스위치란?(23.02.16)  (12) 2023.02.17
NAT 란?  (12) 2023.02.15

댓글