simple_DBMS
1.0.0
본 프로젝트는 국립교통대학교 데이터베이스 시스템 입문 교육자료로 C를 이용하여 구현한 간단한 DBMS입니다.
$ make check
$ python3 test/system/system_test.py ./shell [test_case..]
test_cases가 지정되지 않으면 기본적으로 모든 시스템 테스트가 실행됩니다.
$ make
$ ./shell
현재 테이블 스키마는 하드 코딩되어 있으며, include/User.h의 스키마는 User_t를 확인하여 각 필드의 세부 정보를 얻을 수 있습니다.
User
테이블필드_이름 | 데이터_유형 |
---|---|
ID | 정수 |
이름 | 문자[255] |
이메일 | 문자[255] |
나이 | 정수 |
명령 | 설명 |
---|---|
끼워 넣다 | insert 명령은 한 번에 하나의 User_t 레코드만 삽입할 수 있습니다. |
선택하다 | select 명령은 현재 데이터베이스의 모든 User_t 레코드만 인쇄합니다. |
프로세스가 종료된 후에는 메모리에만 레코드가 저장되지 않습니다.
$ ./shell
파일 모드는 지정된 <DB 파일>에 레코드를 저장하며, 다음 실행 시 동일한 실행 명령으로 레코드를 자동으로 다시 로드할 수 있습니다.
$ ./shell <DB file>
├─ include/ Header files
├─ src/ Source files
│ ├─ shell.c Entry point, which contains main()
│ └─ Util.c Some utility functions
├─ test/ Unit tests & system tests
│ ├─ include/ Test header files
│ ├─ system/ System tests
│ └─ *.c Unit tests source file
└─ Makefile Makefile for make