데이터베이스 2

[Data Structure] B-tree 정의 및 장/단점

검색을 위한 자료구조 중에 잠재력이 가장 큰 것은 역시 트리이다. 그 중 이번 포스팅에서는 B-tree에 대해 알아볼 것이다. B-tree는 주로 데이터베이스에서 인덱스를 저장할 때, 많이 사용된다. 이번 포스팅을 찾은 사람 중에 인덱스 관련 글을 보던 중, B-tree에 대해 궁금해져 찾아온 사람도 있을 것이다. 그럼 B-tree에 대해 알아보자. B-tree의 정의- 모든 노드는 최대 m개의 자식들을 가진다.- 루트노드와 리프노드가 아닌 모든노드는 최소 m/2개의 자식을 가진다.- 루트노드는 최소 2개 이상의 자식을 가진다.- k개의 자식을 가진 리프노드가 아닌 노드는 k-1개의 키를 가진다.- 모든 리프노드들은 같은 높이에 있어야 한다.- 모든 노드들은 키와 자식노드에 대한 포인터로 이루어져 있다...

[C/C++]MySQL을 C로 연동하는 소스

MySQL을 C로 연동해 보았다. 예전에 진자게 해본 것이지만 이번 기회에 라이브러리 처럼 정리해서 계속 사용하기 위해서 다시 한 번 만들어 봤다. 간단한 함수 몇개를 만들고 각 사항에 대한 에러코드를 만들었다. 1. dbError.h 각 에러들이 기술되어있는 헤더파일이다. 이런 식으로 에러를 기술해 놓으면 어느 부분에서 에러가 났는지 찾기가 쉬워진다. #define MB_RES unsigned int #define MB_OK 0x00000000 #define DB_INIT_ERROR 0xff000000 #define DB_CONNECTION_ERROR 0xff000001 #define DB_QUERY_EXECUTION_ERROR 0xff000002 #define DB_FETCH_FAIL 0xff0000..

Programming/C, C++ 2012.08.05