제이펍의 도서 | Posted by 제이펍 2011.04.19 11:20

SQLite 마스터 북(제2판)

(제한 판매: 대량 주문은 출판사로 따로 연락주시기 바랍니다. 070-8201-9010)

출판사  제이펍
원출판사  Apress
원서명  The Definitive Guide to SQLite(2/e)(원서 ISBN 9781430232254)
저자명  그랜트 알렌(Grant Allen), 마이크 오웬스(Mike Owens)
역자명  심재철
출판일  2011년 4월 20일
페이지  400쪽
판  형  4*6배판 변형(188*245) 반양장(Soft Cover)
정  가  25,000원
ISBN  978-89-94506-15-9  부가기호: 13560
시리즈  I♥Mobile 11(아이러브모바일 11)
분야  모바일 프로그래밍 / 데이터베이스
키워드  아이폰 / 아이패드 / 안드로이드 / RDBMS / 임베디드 데이터베이스 / 트랜잭션 / 쿼리

관련 사이트
아마존 원서 소개 페이지
■ Apress 원서 소개 페이지
원서 소스 코드 다운로드
(## 원출판사의 실수로 9장과 10장의 소스 코드가 동일했었는데, 2011년 7월8일부터 제대로 된 소스 코드가 등록되었습니다!)

관련 포스트
2011/04/10 - [출간전 책소식] - SQLite에 대해 많이 궁금하셨나요?

예제 소스코드(위의 원서 소스 코드 다운로드가 되지 않는 분들은 아래의 파일을 받으시면 됩니다)

9781430232254.zip



강의자료

대학이나 학원 등에서 교재로 채택하신 분들은 출판사로 전화나 메일을 주시면 강의노트(ppt 파일)를 보내드리도록 하겠습니다.  


정오표 페이지
원서 정오표 페이지
번역서 정오표 페이지

샘플 챕터(앞부속물과 2장 '시작하기')

SQLite마스터북(제2판)부속물.pdf

SQLite마스터북(제2판)_02.pdf


찾아보기
(책에 인쇄된 것과는 달리, 독자들이 주요용어를 보다 찾기 쉽도록 역자께서 새로 2단으로 구성하여 제공하였습니다. 이 찾아보기는 2쇄 때 반영할 예정입니다)

SQLite마스터북(제2판)찾아보기.pdf


도서 구매 사이트(가나다 순) (미등록된 곳은 등록되는 대로 링크를 걸어 드리겠습니다)


도서 소개

아마존 SQLite 분야 베스트셀러!

엔터프라이즈 컴퓨팅 세계 밖에는 광범위한 소프트웨어와 하드웨어에서 관계형 데이터베이스의 능력을 보여줄 수 있는 RDBMS가 하나 있다. 이 RDBMS는 종래의 RDBMS에 들어가는 비용과 부담이 없는 오픈 소스인데, 그것은 바로 SQLite이다. SQLite는 놀랄 만큼 작은 크기의 임베디드 데이터베이스 시스템이면서도 거대한 크기의 데이터베이스를 처리할 수 있다. SQLite는 또한 다양한 프로그래밍 개발 환경에서 사용이 가능한 강력한 기능들을 갖추고 있다. 그리고 C, Java, Perl, PHP, Python, Ruby, TCL 등의 수많은 언어들을 지원한다.

이 책은 이처럼 강력한 DBMS의 최신 버전을 완벽하게 다루고 있다. 또한 SQLite의 기능과 API를 철저하게 해부하고 있다. 그리고 초보자들도 SQLite를 이용하여 데이터베이스 애플리케이션 개발을 손쉽게 할 수 있도록 구성되어 있다. 서버에서 실행되는 브라우저 플러그인이나 차세대 아이폰 및 안드로이드 애플리케이션만큼 다양한 프로그램들을 짧은 시간에 작성할 수 있도록 도와주는 최적의 가이드이다.

• C, Java, Perl, PHP, Python, Ruby, Tcl 언어를 사용하는 SQLite 언어 확장에 대해 배운다.
• SQLite의 내부 메커니즘을 확실하게 파악하도록 한다.
• SQLite 기반의 iOS와 안드로이드 애플리케이션을 개발하는 방법을 배운다.

SQLite는 전 세계적으로 수많은 제품에 채택된 솔루션이다. 모바일 폰과 GPS 장치에서부터 셋톱 박스와 웹 브라우저에 이르기까지 그 범위가 굉장히 넓다. 여러분이 인식하지 못하는 사이에도 이미 SQLite를 사용하고 있을 것이다(아이폰과 안드로이드 폰 쓰고 계시죠?).

이 책의 구성
이 책은 11개 장으로 되어 있으며, 다음과 같은 다양한 내용들을 다룬다.

• SQLite 개요와 다운로드 및 설치
• SQLite에서 SQL 사용하기
• SQLite의 C API
• Python, Tcl, Ruby, Java 등의 언어에서 SQLite 사용하기
• SQLite 기반의 모바일 장치 애플리케이션 개발하기
• SQLite 내부와 새로운 기능

이 책은 원하는 부분으로 건너뛰어 가면서 읽어도 된다. 단, C API를 다루는 5, 6, 7장은 차례대로 읽는 것이 좋다.

선수 지식
이 책에서는 여러분이 SQLite의 사전 지식을 갖고 있지 않다고 가정한다. SQLite는 폭넓은 C API를 사용해서 C로 작성되었다. 하지만 Python, Tcl, Ruby, Java와 같은 다른 많은 언어들도 지원한다. 그리고 데이터베이스 엔진으로서 SQL을 폭넓게 사용한다. 이 책의 예제들은 경험이 제법 있는 독자들에게도 도움을 줄 것이다. 단, 프로그래밍 언어 자체를 설명하지는 않는다.

저자 소개
그랜트 알렌 Grant Allen
IT 분야에서 20년 이상 근무했다. 여러 소프트웨어 개발 회사에서 기술 담당 최고 책임자(CTO)를 맡았으며, 구글의 데이터 아키텍트도 역임하였다. 그리고 정부와 학계는 물론 대규모 시스템의 설계와 개발 컨설팅 등 여러 분야에서 근무하였다. 그랜트는 데이터 마이닝이나 관계형 데이터베이스 및 업무 기술 등의 주제로 IT 컨퍼런스와 업계 행사에서 자주 강연하고 있다.

마이크 오웬스 Mike Owens
텍사스주 포트워스에 있는 부동산 회사의 IT 담당 임원이며, 회사의 핵심 시스템 개발과 관리를 맡고 있다. 마이크는 오크리지 국립 연구소에서 프로세스 설계 엔지니어로 근무했으며, 노바 정보시스템에서 C++ 프로그래머로 일했다. 그는 SQLite의 Python 언어 확장인 PySQLite의 최초 개발자이기도 하다. 조깅, 기타 연주, 스키, 사냥 등 다양한 취미활동을 즐기고 있으며, 아내와 두 딸 및 두 마리의 테리어 개와 함께 텍사스주 포트워스에서 살고 있다.

기술 검토위원 소개
리차드 힙 D. Richard Hipp
SQLite와 포실(Fossil) DVCS 모두의 최초 개발자 겸 프로젝트 리더이다. 리차드는 전 세계의 고객들을 위해 이 제품들의 유지보수와 개선을 전담하고 있다. 리차드는 노스캐롤라이나 주의 샬럿에서 태어났으며, 그의 아내인 진저와 함께 현재도 그곳에 살고 있다. 리차드는 1984년 조지아 공대에서 전기공학 석사 학위를 받았고, 1992년 듀크대에서 박사 학위를 받았다.

역자 소개
심재철
현재는 프리랜서로 데이터베이스/모바일 시스템 분야에서 컨설팅 및 강의를 하고 있다. 이전에는 데이터베이스 및 객체지향 시스템 개발 프로젝트 지원 업무로 15년간 활동하였으며, 건설/금융 분야의 애플리케이션 개발에서도 14년간의 경력을 갖고 있다. 유명 IT 서적에 대한 번역도 꾸준히 하고 있는데, 대표 역서로는 『이펙티브 자바(제2판)』(대웅, 2009), 『Thinking in JAVA(4판)』(사이텍미디어, 2007), 『UML 사용자 지침서』(인터비전, 1999) 등이 있다.

차 례
CHAPTER 1 :: SQLite 개요

임베디드 데이터베이스
개발자의 데이터베이스
관리자의 데이터베이스
SQLite 내력
SQLite가 사용되는 곳
아키텍처
SQLite의 특성과 철학
성능과 제약
이 책을 읽어야 할 사람들
이 책의 구성
추가 정보 얻기
1장 요약

CHAPTER 2 :: 시작하기
SQLite를 구할 수 있는 곳
윈도우즈에서 SQLite 설치하기
리눅스와 맥 OS X 및 다른 POSIX 시스템에서 SQLite 생성하기
명령행 프로그램
데이터베이스 관리
그 외의 다른 SQLite 도구들
2장 요약

더보기






 

저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

  1.  댓글주소  수정/삭제  댓글쓰기 멋진인성 2011.04.19 15:06 신고

    모바일 프로그래밍에 꼭 필요한 책이나왔네요.
    많은 홍보 하도록 하겠습니다. ^^
    수고하세요.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011.04.19 16:40 신고

      앗!! 중국에서도 관심을 가져주셔서 고맙습니다!!
      홍보활동 지켜보고 있다가 한국 돌아오면 그에 따라 저녁 메뉴를 골라 사드리도록 하지요!! ^^*

  2.  댓글주소  수정/삭제  댓글쓰기 초보 2011.04.20 15:58 신고

    The author disclaims copyright to this source code. In place of
    a legal notice, here is a blessing:

    May you do good and not evil.
    May you find forgiveness for yourself and forgive others.
    May you share freely, never taking more than you give.

    세상에서 가장 아름다운 라이센스 문구가 아닐까 합니다.

  3.  댓글주소  수정/삭제  댓글쓰기 연우 2011.06.07 08:44 신고

    이 책 소스코드요!
    10장 안드로이드 부분을 보려고 하는데,
    10-1 myDatabaseHelper.java 이 소스코드는 어디에 있나요??
    그렇다고 책에 소스코드 전체가 나와있는 것도 아니고 ㅠㅠㅠㅠ
    소스코드는 물론 다운 받았습니다.
    근데 10장에 없던데 ... 제가 못찾은 건가요?
    꼭답변 부탁드려요!

  4.  댓글주소  수정/삭제  댓글쓰기 연우 2011.06.07 08:51 신고

    아 그리고 9장이랑 10장이랑 소스코드가 똑같은 듯요
    저만 이런 건가요?
    오류가 있는 것 같은데
    무튼 꼭 답변 부탁드려요!!!! ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011.06.07 14:08 신고

      말씀하신 것처럼 9장과 10장의 소스가 같은 것을 저희도 확인했습니다. 원출판사의 실수인 것 같은데요. 여러 경로를 통해 저자 연락처를 알아보고 있는데, 원출판사에서도 알려주지 않네요. 저자가 책에 표시하지 않은 건 저자가 공개하기를 꺼리는 거라면서요.. 이런..
      LinkedIn에 가입하여 현재 저자에게 InMail 형태로 문의를 해둔 상황이니 답변 오는 대로 이 포스팅에 안내해드리겠습니다.

      아무쪼록 불편을 끼쳐드려 죄송합니다.

  5.  댓글주소  수정/삭제  댓글쓰기 cha 2011.07.06 15:12 신고

    아직도 10장 소스코드는 올라오지 않은건가요?
    책에 자세한 자세한 설명이나 풀코드라도 나와있으면 모를까
    이건 손도 못대게 만들어놓고 소스코드마저 한달이넘게 안올라오네요.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011.07.06 17:09 신고

      계속 늦어져서 죄송합니다. 저자가 새로 코드를 만들어서 Apress 출판사로 전달했다는 메일을 오늘 받았습니다. Apress에 들어가 보니 아직 변경된 건 올라와 있지 않았는데, 곧 올라올 것 같습니다. 올라오는 대로 저희 블로그에도 올려드리도록 하겠습니다.

      아래는 두 명의 저자 중 다른 한 명이 오늘 저희에게 보내온 메일입니다.
      ============
      Mike Owens has sent you a message.
      Date: 7/05/2011
      Subject: SQLite Book
      I just got a message from Richard Hipp. He said that Grant has finished rewriting the code and that the Apress site should have the updated code soon.
      ============

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011.07.08 20:19 신고

      드디어 새로 올라왔습니다. 오래 기다리게 해서 죄송합니다. 위의 관련 사이트에 있는 ■ 원서 소스 코드 다운로드를 클릭하여 다운받으시면 됩니다. ReadMe 파일로 저자가 사과의 글까지 올려놓았네요..

  6.  댓글주소  수정/삭제  댓글쓰기 cha 2011.07.09 14:27 신고

    감사합니다.
    처음에 글을 너무 안좋게써서 죄송하네요..
    초보잔데 하고싶은 부분을 할수가 없어서..ㅠㅠ
    수고하셨습니다 감사합니다!!

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011.07.09 23:47 신고

      아닙니다. 별말씀을요. 저자에게 메일을 보내기 위해 링크드인 유료회원으로 가입하면서 20여만 원을 넘게 지불했지만, 늦었더라도 이렇게 제대로 된 소스 코드를 받을 수 있어 정말 다행이라고 생각합니다.
      공부하시는 데 도움이 되길 바랍니다!!!!

  7.  댓글주소  수정/삭제  댓글쓰기 SQLite 열공중 2011.09.14 17:14 신고

    안녕하세요. 지금 책구매후 100페이지 정도 보고있는데 궁금한점이 있는데 어디다 질문을 올려야 할지 모르겠어서 여기에 글을 남깁니다.
    72페이지(그림3-3)에 보면 SQL 쿼리명령의 연산순서가
    from - where - group by - having - select 순서라고 나와있는데요.
    102페이지 중단에 SQL쿼리문을 보면

    select name,(select
    case
    when count(*) > 4 then 'Very High'
    when count(*) = 4 then 'High'
    when count(*) in (2,3) then 'Moderate'
    else 'Low'
    end
    from foods_episodes
    where food_id=f.id) frequency
    from foods f
    where frequency like '%High';

    여기서 연산순서대로 하면 from절이 먼저 수행되고 그다음 where절이 수행될 때 frequency 라는 열이름(토큰)을 어떻게 인식하는거죠?
    frequency 는 select절에 선언되어 있고 연산순서에 따르면 where절 다음에 select절이 수행되니까
    where절이 수행될 당시 frequency 는 아직 정의 되지 않은 열이름이 아닌가요?

    이부분에서 뭔가 이해가 되지않아서 이렇게 글을 남기게 되었습니다.ㅠㅠ

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011.09.14 20:27 신고

      안녕하세요?
      먼저 도서 구매 감사드립니다.
      문의해주신 부분은 역자에게 문의하여 답변이 들어오는 대로 여기에 다시 올려드리도록 하겠습니다!
      일단 다른 부분 먼저 공부하시고 하루 혹은 이틀 정도만 기다려 주세요!!

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011.09.15 09:33 신고

      안녕하세요? 역자로부터 답변을 받아 아래에 기재해드립니다. 도움이 되었으면 합니다. 그리고 혹시 앞으로도 문의사항이 있으면 jeipub골뱅이gmail.com으로 연락 주시면 답변해드리도록 하겠습니다.
      ===========================
      SQL 명령은 실행하기 전에 컴파일되며 테이블이나 열에 대한 참조 정보는 이때 미리 만들어집니다.
      즉 각 절을 처리하면서 그때그때 인식하는 것이 아니고 명령 전체에 대해 사전에 파악한다는 겁니다.
      그리고 실행하는 코드는 명령 전체에 대해 분석된 것을 기반으로 만들어집니다.
      단지 select 명령의 경우는 다양한 절이 복잡하게 사용될 수 있으므로, 개념적인 순서는
      from -> where -> group by -> having -> select라고 생각할 수 있습니다.
      그리고 서브쿼리가 각 절에 포함된 경우는 그것의 결과가 반영됩니다.

      select 명령의 from 절이 먼저 수행될 때는 거기에 지정된 테이블들을 조인하여 임시 결과 테이블을 만들게 됩니다.
      물론 하나의 테이블이면 그 테이블의 모든 데이터를 그냥 사용하고 두 개 이상인 경우는 조인하게 되죠.
      조인하는 조건은 from 절 또는 where 절에 지정된 것을 사용합니다.
      그리고 임시 결과 테이블의 열들은 select 절에 지정된 것을 참조하여 생성됩니다.

      따라서 102페이지에 있는 select 명령의 경우에 임시 결과 테이블의 열은 두 개가 생기죠.
      첫 번째 열은 foods 테이블의 name 열이고, 두 번째 열은 서브쿼리의 결과로 만들어진 것으로서
      frequency라는 이름을 우리가 준 것이죠.

      즉, where 절을 실행하기 전에 이미 name 열과 frequency 열 및 그것들의 데이터를 갖는 임시 결과 테이블이 생성되어 있는 겁니다.
      그러므로 where 절에서 frequency 열을 알 수 있는 것이죠.

      하지만 이처럼 다른 테이블과 조인하거나 하지 않고 하나의 테이블의 열만 select 절에서 사용한다면
      from 절의 테이블을 그냥 사용하면 되니까 from -> where의 순서를 그대로 밟아간다고 생각할 수 있죠.

      요약해서, select 절에 지정된 열 중에서 from 절에 있는 테이블(들)에 있지 않은 열(들)을 사용할 경우는(보통 서브쿼리로 만들어지는)
      사전에 만들어진다고 생각하면 됩니다(from 절이 실행되어 임시 결과 테이블이 생성될 때).
      =========================

  8.  댓글주소  수정/삭제  댓글쓰기 SQLite 열공중 2011.09.15 16:40 신고

    친절한 설명감사드립니다. 알면알수록 모르는것도 같이 늘어가는것 같습니다. ㅠㅠ
    감사합니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011.09.15 23:16 신고

      도움이 된 것 같아 저희도 기쁘네요. 혹시 앞으로도 문의사항이 있으면 언제든지 연락주세요.. 열공하시고, 알면 알수록 모르는 것이 늘 수도 있지만, 돌아보면 아는 것도 늘어나 있을 겁니다. ^^



티스토리 툴바