MS Access DB사용을 편하게 하기 위한 모듈입니다.

CloudTree 레퍼런스 클래스에 넣을까 했는데.. 일이 바쁘다보니 DB Search 에 필요한 쿼리문을 범용으로 구성할 아이디어도 잘 안떠오르고.. 결정적으로 DB 설계에 따라 소스 자체를 건드려야될 것 같아서 MS Access DB Module은 따로 빼기로 했습니다.


주의하실 점으로.. XP에서 사용하기 위해 제작된 모듈이며, 7에서는 ADO 관련 dll에서 문제가 생기는 점을 발견했습니다.


① 함께 첨부하는 ADO_XP.zip 을 C:\Program Files\Common Files\System 안에 ADO_XP라는 폴더에 풀어주시고, 

② AccessDBModule.h 상단에 dll import 구문에 C:\Program Files\Common Files\System\ADO 를 C:\Program Files\Common Files\System\ADO_XP로 바꾸면 잘 동작합니다.(import 문 세줄 다 해주셔야 됩니다.)


CloudTree 레퍼런스 클래스와는 다르게 편의성이 썩 좋지는 못합니다.

우선 DB 설계는 각 프로젝트마다 필요성에 의해 다를테니 어쩔수 없는 부분이라 생각됩니다.


본 레퍼런스에서 사용하는 DB는 sample.mdb 파일을 사용하며, 'Data_table' 이라는 단일 테이블에 어트리뷰트로 r_Date, r_Level, r_Name, r_IDNumber, r_Belong1, r_Belong2, r_Score, r_Etc를 사용하고 있습니다.


사용 목적에 따라 mdb 파일을 새로 구성하시거나 변경하시고, 각 함수에서의 내용도 거기에 맞춰 변경하시면 됩니다.


구성 함수는 다음과 같습니다.


void DBConnect(void);    // DB 파일 접속.

void DBDisConnect(void);    // DB 접속 해제.

list<stRecord>* DBSerch(void);    // DB 내용 전체 검색.

void InsertData(stRecord data);    // DB에 자료 입력.

list<stRecord>* SearchData(int category, CString word);    // 특정 카테고리에서 특정 검색어로 자료 검색.



아.. 쓰다보니 귀찮네요.. 

어제 송년회가 있어서 소주를 달렸더니 숙취가..

AccessDBModule.cpp, AccessDBModule.h 와 함께 샘플 프로그램을 첨부하겠습니다.



AccessDBModule.cpp


AccessDBModule.h


sample.zip


ADO_XP.zip



아마 샘플코드 보시면 아.. 대강 이렇게 쓰면 되는구나 하실 정도로 쉽게 코딩되어 있습니다.


저도 DB에 대한 개념이 제대로 잡히지 않은 상태에서 급하게 필요해서 만든 자료라 매우 초보적인 구성이거든요 ㅋㅋ

뭐 최소한 저처럼 DB는 잘 모르는데 급하게 관련 레퍼런스가 필요하신 분이 한분이라도 있고, 조금이라도 도움이 됐다면 그걸로 만족입니다 ^^;;