도서의 특징

SQL(structured query language)은 쿼리와 테이블, 무엇보다 데이터베이스 자체에 대한 개념 없이는 쉽게 접근하기 어려운 도구라고 할 수 있다. 그러나 그 강력함과 손쉬움으로 인해 데이터베이스의 세계에 빠져들지 않을 수 없게 만드는 매력적인 언어이기도 하다. 『SQL이 보이는 그림책』에서는 딱딱하고, 개념적이기 쉬운 데이터베이스를 SQL을 통해 아주 쉽게 이해할 수 있도록 설명하고 있다. 이미지를 통해 '설명하는 것이 아닌 보여주는' 특징을 가진 이 책은 전체 8장과 권말부록을 통해서 SQL과 데이터베이스에 대한 개념을 확실히 이해할 수 있도록 도와줄 것이다. 더불어 연습문제와 예제 소스들을 통해 별도로 학습할 수 있는 기회도 제공하고 있다. 부록 CD로 MS SQL Server 2000 평가판을 제공한다.


[챕터별 내용 요약]
제0장 SQL을 시작하기 전에
SQL 언어와 데이터베이스의 개념과 종류에 대해 알아봅니다. 그리고 SQL을 잘 사용하기 위해 기억해두어야 할 특징과 다섯 가지 명심할 점에 대해서도 안내합니다.

제1장 데이터베이스란
SQL을 사용하기 위해서 필수적으로 알아두어야 할 데이터베이스의 개념을 설명합니다. 파일에 의한 데이터와 데이터베이스는 어떤 차이가 있는지, 데이터베이스의 종류와 그 차이는 무엇인지에 대해서도 알아봅니다.

제2장 SQL의 기본
SQL을 실제로 사용하는 방법에 대해 설명합니다. 데이터베이스와 테이블을 만드는 방법으로 시작해서 제약 조건, 데이터 등록과 가져오기, 정렬, 데이터 형에 대해 알아봅니다.

제3장 기본 조작(1)
SQL에서 SELECT문과 WHERE절을 이용하여 특정한 데이터를 가져오는 방법에 대해 알아봅니다. 또한 SQL에서 필수적인 연산자의 종류와 특징 등에 대해서도 알아봅니다.

제4장 주요 함수
함수의 기본적인 개념으로 시작하여 수치 함수, 문자열 함수, 날짜 함수, 집합 함수, 변환 함수 등의 RDBMS 주요 함수에 대해 알아봅니다. 그리고 예제 소스 코드를 통해서 실전 연습을 할 수 있도록 합니다.

제5장 기본조작(2)
3장에 이어서 SQL의 데이터 수정 및 삭제 등의 고급 조작 방법을 알아봅니다. INSERT문, UPDATE문, DELETE문 사용 방법과 서브 쿼리의 개념과 응용 방법 등을 다루기로 합니다.

제6장 복잡한 데이터 조작
여러 개의 테이블을 연결하여 조작하는 조인(Join)과 SELECT문의 결과끼리 연산하는 집합연산자, UNION, UNION ALL, INTERSECT, EXCEPT 등의 활용 방법에 대해 알아봅니다.

제7장 데이터 보호 장치
RDBMS의 공유 데이터를 보호하는 트랜잭션(Transaction)과 커미트, 롤백 등을 통해서 데이터에 최신 자료를 안전하게 정리하고 보호하는 방법에 대해 알아봅니다.

제8장 프로그램과의 연계
저장 프로시저(Stored Procedure)와 트리거, 확장 SQL, 결과셋과 커서 등을 통해 SQL을 보다 실용적으로 사용하는 방법에 대해 알아봅니다.

부록: 고급 SQL 팁
SQL을 잘 활용하기 위한 각종 팁과 레퍼런스 등이 정리되어 있습니다. 각 장을 학습하면서 참고하기 바랍니다.

[추천사]
책의 처음부터 마지막까지 한 번도 지루함을 느낄 수 없었다는 점에 놀라지 않을 수 없었다. 늘 프로그래밍에는 왕도가 없노라고 말해왔지만, 처음 시작하는 사람들에게 이만큼 효율적인 방법이 있을까 하는 생각이 든다. 프로그래밍을 배우려는 사람들, 데이터베이스를 막연히 사용했던 사람들에게는 가장 권할만한 책이라는 생각이다. '천리 길도 한걸음부터' 보다는, '시작이 반이다'라는 격언이 먼저 떠오르는 이 책을 추천한다.
- 김동한, 펜타시스템테크놀로지 고등기술연구소 소장

초보자들도 이해할 수 있도록 하면서 중급자가 될 수 있도록 문을 열어준 책으로 평가하고 싶다. 대부분의 프로그래밍 입문서와는 달리 기본 개념에 충실하면서도 이미지 등을 통해 대단히 효율적으로 설명한 것이 인상적이었다. 초보자들을 대상으로 한 책이지만, 기초가 부실하다고 느끼는 중급자들도 제대로 개념을 이해하고 넘어가는데 부족함이 없어 보인다. 두꺼운 프로그래밍 서적을 장식처럼 가지고만 있는 사람들에게 자신 있게 권할 만하다.
- 김나영, 국민은행 인프라 개발팀

초보자들에게 프로그래밍이 가장 어려운 점은 시작 자체가 쉽지 않다는 점이다. 사람의 언어가 아닌 기계가 이해할 수 있는 또 다른 언어로 무엇인가를 만든다는 것은 초보자 입장에서는 막막하기만 하다. 그리고 기존의 입문서들은 그런 초보자들의 어려움을 충분히 해결해 주지 못했다고 생각한다. 어쩌면 이질적으로 보이는 색다른 구성이 이 책으로 초보자들의 막막함을 풀어줄 수 있을지도 모른다는 희망을 갖게 되었다.
- 김성욱, 한양대학교 산업공학과

한 권의 책으로 모든 것을 배우려는 욕심쟁이에게는 적합하지 않다. 그러나 한 단계씩 충실히 배우려는 사람에게는 너무나 적합한 지침서라고 생각된다. 프로그래밍이 어렵게만 느껴졌다면, 기존의 입문서가 버겁게만 느껴졌다면, 이 책을 자신 있게 권하고 싶다.
- 박상훈, 전 월간《마이크로소프트웨어》 기자


목차

  제0장 SQL을 시작하기 전에
01. 데이터베이스란?/02. 데이터베이스의 종류/03. SQL의 탄생/04. SQL이란 어떤 거야?/05. SQL의 장점과 주의점/06. SQL의 다섯 계명

제1장 데이터베이스란?
[Key Point] 파일에 의한 데이터 관리/[Key Point] 데이터베이스에 의한 데이터 관리/01. 데이터베이스란?/02. 관계형 데이터베이스란(1)/03. 관계형 데이터베이스란(2)/04. SQL이란?/[Exercise] 도전! SQL/[상식] 객체지향 데이터베이스

제2장 SQL의 기본
[Key Point] SQL을 사용해 보자!/[Key Point] 데이터를 조작하려면?/01. 데이터베이스와 테이블/02. 제약 조건/03. 데이터의 등록과 가져오기/04. 지정한 열 가져오기/05. 데이터 정렬/06. 기타 옵션/07. 데이터형/[Exercise] 도전! SQL/[상식] IDENTITY

제3장 기본 조작(1)
[Key Point] 특정 데이터를 가져오려면?/[Key Point] 여러 가지 연산자/01. WHERE절/02. 산술 연산자/03. 비교 연산자/04. 논리 연산자/ 05. 문자 처리 연산자/06. 기타 연산자(1)/07. 기타 연산자(2)/08. 예제 코드/[Exercise] 도전! SQL/[상식] 건수를 지정하여 검색

제4장 주요 함수
[Key Point] 마법의 블랙박스/ [Key Point] RDBMS 고유의 함수/01. 함수란/02. 수치 함수(1)/03. 수치 함수(2)/04. 문자열 함수(1)/05. 문자열 함수(2)/06. 날짜 함수(1)/07. 날짜 함수(2)/08. 집합 함수(1)/09. 집합 함수(2)/10. 변환 함수/11. 예제 코드(1)/12. 예제 코드(2)/[Exercise] 도전! SQL/[상식] RDBMS 고유의 함수

제5장 기본 조작(2)
[Key Point] 데이터를 가지고 놀자/[Key Point] 서브 쿼리가 뭐지?/01. INSERT문(1)/02. INSERT문(2)/03. UPDATE문/04. DELETE문/05. 서브 쿼리(1)/06. 서브 쿼리(2)/07. 서브 쿼리 응용편/08. 예제 코드(1)/09. 예제 코드(2)/[Exercise] 도전! SQL/[상식] 상관 서브 쿼리

제6장 복잡한 데이터 조작
[Key Point] 여러 개의 테이블 조작하기/[Key Point] 집합 연산자와 한정 술어 사용하기/01. 다양한 조인/02. 교차 조인/03. 내부 조인/04. 외부 조인(1)/05. 외부 조인(2)/06. WHERE절을 사용한 외부 조인/07. 뷰의 작성/08. 뷰의 이용/09. 집합 연산자(1)/10. 집합 연산자(2)/11. 한정 술어(1)/12. 한정 술어(2)/13. 예제 코드(1)/14. 예제 코드(2)/[Exercise] 도전! SQL/[상식] 인덱스

제7장 데이터 보호 장치
[Key Point] 데이터를 보호하는 장치/[Key Point] 결과를 반영할지는 내가 결정한다/01. 트랜잭션/02. 커미트와 롤백/03. 잠금 장치/[Exercise] 도전! SQL/[상식] 데드락

제8장 프로그램과 연계
[Key Point] SQL의 작성은 프로그램에게 맡기자/[Key Point] SQL + α의 편리한 언어/01. 동적 SQL/02. 저장 프로시저/03. 트리거/04. 확장 SQL/05. SQL 에 의한 프로그래밍/06. 확장 SQL의 변수/07. 확장 SQL의 제어문/08. 결과 셋과 커서/[Exercise] 도전! SQL/[상식] 데이터베이스 드라이버

부록: 고급 SQL 팁
01. 다양한 데이터형/02. 열 구성 변경하기(1)/03. 열 구성 변경하기(2)/04. 제약 조건 추가하기/05. 테이블과 열 이름 변경하기/06. 기타 변경/07. 외부 키(1)/08. 외부 키(2)/09. 예제 프로그램(1)/10. 예제 프로그램(2)/11. 예제 코드/12. 예약어/13. MSDE 2000의 설치/14. SQL Server 2000

용어 해설 모음
찾아보기