ODBC와 DAO의 차이
ODBC(Open Database Connectivity)
ODBC는 Database Application과 DBMS를 연결시키는 표준적인 인터페이스를 말한다.
ODBC 표준에는 SQL 문법 뿐 아니라, C언어를 이용한 프로그래밍 인터페이스도 정의되어있다.
따라서 DOBC를 이용하면, Database Application은 DBMS의 종류(Oracle, MS-SQL, mySQL 등)에 상관 없이
연동할 수 있다.
ODBC 표준에는 SQL 문법 뿐 아니라, C언어를 이용한 프로그래밍 인터페이스도 정의되어있다.
따라서 DOBC를 이용하면, Database Application은 DBMS의 종류(Oracle, MS-SQL, mySQL 등)에 상관 없이
연동할 수 있다.
DAO(Data Access Object)
DBMS와의 Inerface를 제공한다는 점에서는 ODBC와 같다. ODBC와 DAO는 내부적으로 완전히 다르지만,
사용방법은 거의 같다.
ODBC와 DAO의 큰 차이점은 ODBC는 Network를 지원하며 다중 사용자가 Database에
접속할 수 있게 해주지만, DAO는 Network를 이용하여 Database에 접근할 수 없고, 한 번에 한 명의 사용자만이
Database에 접근할 수 있다. 이런 제약 때문에 DAO는 ODBC보다 동작속도가 빠르며, ODBC에서 지원하지 않는
몇 가지기능을 더 가지고 있다.
사용방법은 거의 같다.
ODBC와 DAO의 큰 차이점은 ODBC는 Network를 지원하며 다중 사용자가 Database에
접속할 수 있게 해주지만, DAO는 Network를 이용하여 Database에 접근할 수 없고, 한 번에 한 명의 사용자만이
Database에 접근할 수 있다. 이런 제약 때문에 DAO는 ODBC보다 동작속도가 빠르며, ODBC에서 지원하지 않는
몇 가지기능을 더 가지고 있다.
즉, Database가 Network을 이용해 접근해야 한다면 ODBC를, 그렇지 않고 Local에 있게 되어 혼자만 접근해
사용한다면 DAO를 사용하는 것이 효율적이다.
참고 : Visual C++ 완벽가이드 (영진출판사)