๊ฐœ๋ฐœ ์ง€์‹/CS ์ง€์‹

๐Ÿ‘ฉ‍๐Ÿ’ป JDBC vs ODBC ์ฐจ์ด ์ •๋ฆฌ

์ธํŒŒ_ 2021. 10. 6. 22:18

JDBC-ODBC

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๋ฅผ ์„ค์น˜ํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค.

# ์ฐธ๊ณ ์ž๋ฃŒ

https://ojava.tistory.com/24?category=348322

https://beom3.tistory.com/24