책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 모바일/무선/임베디드 프로그래밍
· ISBN : 9788992939775
· 쪽수 : 384쪽
책 소개
목차
Part 01. SQLite 소개
- 주요특징
- 주요사용처
- SQLite3의 제약사항
Part 02. SQLite3 설치
- 윈도우 환경에서의 SQLite3 설치와 사용
- 리눅스 환경에서의 SQLite3 설치와 사용
Part 03. SQL
- SQL 기본
- SQLite3의 자료형
- 테이블의 생성과 삭제
- 레코드 입력
- 레코드 조회(SELECT)
- 레코드 수정(UPDATE)
- 레코드 삭제(DELETE)
- 내장 함수
- 그룹화
Part 04. SQL 고급
- 관계형 데이터베이스 설계
- 기본키
- 외래키
- 중첩 질의
- 조인 연산
- 인덱스(Index)
- 테이블 제약조건
- 뷰(VIEW)
- 트리거
- 테이블 수정(ALTER TABLE)
- 트랜잭션
- 다른 데이터베이스 파일 연결
- 동적 자료형
Part 05. SQLite3 C API 기초
- 데이터베이스 연결
- SQL 구문 실행 : sqlite3_exec() 활용
- SQL 구문 실행 : sqlite3_get_table() 활용
- SQL 구문 실행 : sqlite3_prepare(), sqlite3_step(), sqlite3_finalize() 활용
Part 06. SQLite3C API 고급
- 잠금 상태 확인 : sqlite3_busy_handler()
- 커밋 여부 확인 : sqlite3_commit_hook()
- 롤백 여부 확인 : sqlite3_rollback_hook()
- 업데이트 여부 확인 : sqlite3_update_hook()
- 권한 체크 : sqlite3_set_authorizer()
- 이스케이프 처리 : sqlite3_mprintf()
- 가변인자를 이용한 이스케이프 처리 : sqlite3_vmprintf()
- 사용자 정의 함수 : sqlite3_create_function()
- 사용자 정의 정렬 함수 : sqlite3_create_collation()
- SQL 문의종료 [d5]여부 확인 : sqlite3_complete()
- 자동 커밋 모드 확인 : sqlite3_get_autocommit()
- 최근 ROWID 확인 : sqlite3_last_insert_rowid()
- 라이브러리 버전 확인 : sqlite3_libversion()
- 메모리 사용량 체크 : sqlite3_memory_used()
- SQL 문 확인 : sqlite3_sql()
- 연결 공유 : sqlite3_enable_shared_cache()
Part 07. 임베디드 SQLite3 최적화
- 실행계획을 통한 질의 최적화
- 데이터베이스 파일 크기 최적화
- 페이지 크기 최적화
- 데이터베이스 파일 검사
- 엄격한 자료형 검사
- 데이터베이스 갱신과 트랜잭션
- 저널 모드와 트랜잭션 성능 향상
- 메모리 데이터베이스
- 테이블 제약조건의 충돌 처리
- 외래키 제약조건의 확장
- SQLite3 설정 변경
- 전문 검색
Part 08. 파이썬과의 연동
- pysqlite 모듈
- 데이터베이스 연결
- SQL문 실행
- 데이터 조회
- 트랜잭션 처리
- 예제-SQLite 실행 관리자
Part 09. 아이폰에서의 SQLite3 활용
- UI 만들기
- SQLite 연결
Part 10. 안드로이드스와 데이터베이스
- 데이터베이스 관련 클래스
- 안드로이드 데이터베이스 애플리케이션
부록 A. Sqlite3 커맨드 라인 도구
- 셸 모드
- 인자 전달 모드
부록 B. SQLite 관리 도구
- SQLite Manager
책속에서
데이터베이스를 전공하고, 한때 SQLite와 유사한 데이터베이스 엔진을 만드는 일에 참여한 계기로 SQLite을 일찍부터 접하게 되었습니다. 우선 이 정도 규모의 데이터베이스가 있다는 사실에 놀랐고, 상용 데이터베이스 시스템 못지않은 성능에 놀랐고, 라이선스 자체가 없이 소스 코드까지 공개돼 있다는 사실에 놀랐습니다. 이런 장점을 지니고 있다 보니 현재 SQLite는 iOS나 안드로이드와 같은 임베디드 데이터베이스 분야를 석권한 최고의 강자가 되었습니다. 가볍고 빠르면서도 사용하기 쉽고, 게다가 무료라니, 무엇보다 iOS, 안드로이드, 레일즈 등 최근 각광받는 여러 개발 환경에서 기본적으로 제공되고 있으니 SQLite가 관심의 대상이 되지 않을 수 없는 상황이 되었습니다. 하지만 SQLite를 소개하는 번역서조차 마땅히 없는 상태에서 이렇게 좋은 책을 만나게 되어 반갑습니다.
이 책에서 가장 마음에 드는 점은 SQLite의 기능이나 사용법에만 초점을 맞추지 않고, 데이터베이스의 기본적인 개념과 원리들까지 체계적으로 설명하고 있다는 점입니다. 많은 데이터베이스 관련 도서들이 이러한 부분을 놓치고 있어서 안타까웠습니다. SQL 등의 기술 덕분에 데이터베이스를 사용하는 것은 쉬워졌지만, 사실 데이터베이스는 꽤 기본기가 필요한 분야입니다. 실제 업계의 사례들을 분석하다 보면 아주 기본적인 데이터베이스 이론조차 잘 모르거나 무시되고 있는 경우가 많고, 이것이 개발된 시스템의 성능 저하나 오류 등의 주요 원인인 것을 종종 발견합니다. 하지만 대학 교재에서나 사용될 만한 데이터베이스 이론 서적들은 너무 어렵고 복잡해서 실제 응용 환경에서 당장 활용하기 힘들고, 오라클이나 MySQL 등과 같은 특정 데이터베이스 사용과 관련된 응용 도서들은 시스템 사용법이나 활용에만 치우쳐 있어서 아쉬웠습니다. 하지만 이 책은 오랜 기간 실무에서 다져진 적절한 균형 감각을 통해 이론과 활용이라는 두 마리 토끼를 훌륭하게 잡고 있습니다. 이 부분은 SQLite와 관련된 해외 도서에도 찾을 수 없는 이 책만의 장점입니다.
SQLite를 제대로 활용하고자 하시는 분들이라면 이 책이 분명 큰 도움이 되리라 믿습니다. 앞으로도 이런 좋은 책을 자주 만날 수 있기를 기대합니다.