attachment:SQLite/sqlite.gif 초기작성자 - [mcguiver9] SQLite 는 엄밀히 말해서 DB이지만 DBMS는 아닌 파일DB입니다. ---- [[TableOfContents]] [http://www.sqlite.org/version3.html 원문보기] == 특징 == * Transactions are atomic, consistent, isolated, and durable (ACID) even after system crashes and power failures * 설치시 setup이나 admin설정이 필요없음 * 대부분의 SQL92 구현 * 데이터베이스가 파일 하나로 되어 있음 * 2테라바이트(2의41승) 지원 * BLOB과 문자열의 사이즈는 오직 메모리에 의해 제한 * 실행파일의 사이즈 작음(250KB) * Client/Server 데이터베이스 엔진보다 빠른 속도 * API 갯수가 아주 적음(프로그래밍하기에 간단) * 외부 Dependency가 없음 * public domain 라이센스로 어떤 목적으로도 사용 가능 * PHP5에서 기본 지원(MySQL 모듈이 빠져있지만 다시 화해했다는 얘기도 있음) == 3.0에 추가된 기능 == * 향상된 Compact한 데이터베이스 파일 형식 * 명백한 타입 및 BLOB형식 지원 * UTF-8, UTF-16 지원 추가 * 사용자 정의 text collating sequences * 64 bit ROWIDs * 향상된 Concurrency == 빠른시작 == SQLite라는 DB는 간단히 말해서 SQL을 사용하여 질의할 수 있는 파일DB 이다. DB가 Embeded된 Application을 쉽게 작성할 수 있을 것 같다. 천천히 이 꼬마괴물 DB에 대해서 알아보려 한다. [http://www.sqlite.org/quickstart.html Quickstart 원문보기] 지겨운 메뉴얼부터 보지말고 SQLite를 일단 체험해보자. 여기서는 일단 제가 설치해 본 윈도우버젼을 설명한다. * [http://www.sqlite.org/sqlite-3_3_4.zip 바이너리버젼 다운로드] * DB 생성 {{{ C:\sqlite> sqlite3 test.db }}} C++에서의 구현 예제(단, 3개의 함수 제공- 초간단) {{{ #include #include static int callback(void *NotUsed, int argc, char **argv, char **azColName){ int i; for(i=0; i