DB에 세이브 기능 구현

두달쯤 전에 ole db를 이용한 멀티 스레드 db억세스 모듈을 하나 만들었었다.

비동기 쿼리함수, 동기식 쿼리함수로 아주 간단한 인터페이스를 가진 DLL모듈이다.

간단한 SELECT문으로 로그인 처리와, 게임의 기본 설정 데이타를 받아오는데만 사용하고 있었다.

이제 캐릭터 정보를 db에 저장하는 기능을 구현하려고 보니 케이스 바이 케이스로 쿼리문을 만들어주는게 무진장 짜증났다.

생각해보면 ole db를 사용하는 이상 모든걸 쿼리로 처리할 필요는 없다.

현재 select쿼리를 날리고 결과를 스트럭쳐 하나로 싹 밀어넣어서 받아오는데, 마찬가지로 Insert,Delete도 쿼리를 작성하지 않고 스트럭쳐를 밀어넣는 방법으로 처리할 수 있다.

해서…금주 월요일부터 작업을 시작했다.

휴.msdn,구글 다 뒤져도 왜 이리 자료가 없는지.

삽질에 삽질을 거듭하여 어제까지 작업으로 Insert,Update,Delete모두 쿼리를 넣지 않고(사실은 select조건이나 테이블 이름하나는 넣어줘야한다.) 처리하도록 모듈을 수정했다.

비동기 모드 Query(범용),Insert,Update,Delete함수와 동기모드 Query(범용),Insert,Update,Delete함수를 모두 인터페이스로 구현했다.
이제 원래 하려던 캐릭터정보의 세이브 기능을 구현해야되는데 집에서 하려니 모니터가 한대밖에 없는것도 그렇고, 회사의 db로 억세스 하는 것은 너무 느린것도 문제.

결국 회사로 와서 방금까지 작업하여 로그아웃 할때마다 캐릭터 정보를 db에 세이브했다

캐릭터를 움직여 다른 곳으로 이동하고 다시 로그인하니 세이브 해둔 위치에서 태어났다.

흠 잘 도는군.

여까지 하고나니 허무감이 밀려와서 코딩하기 싫은데 불러주는 이도 없고 갈데도 없구나.


답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중