SQL Server: 개발편 (디비로 누리는 특별한 세상, 나의 첫 번째 데이터베이스 개발하기)

SQL Server: 개발편 (디비로 누리는 특별한 세상, 나의 첫 번째 데이터베이스 개발하기)

$30.15
Description
[SQL Server: 개발편]은 아주 간단한 쿼리문부터 고급 쿼리 기법까지 배울 수 있는 SQL Server 개발자 가이드입니다. Microsoft 공인 강사의 생생한 현장 경험을 바탕으로 쉽고 친절한 개념 설명과 실용 예제로 구성하였습니다. 무엇보다 이 책의 가장 큰 강점은 학습한 내용을 바로 실무에 적용해 볼 수 있게 구성하였다는 데 있습니다. 이를 위해 SQL Server 운영 환경에 맞게 가상 서버 환경을 구성하고, 실무 데이터가 저장된 데이터베이스를 제공함으로써 인덱스와 튜닝 등 현장감 넘치는 쿼리문을 구사해볼 수 있게 하였습니다.
저자

이장래

저자이장래는20여년간SQLServer와함께하고있는저자에게여러호칭이있지만,저자본인이가장좋아하는호칭은'강사'다.가르치는게좋아SQLServer관련사이트를만들어Q&A게시판을운영했고,오프라인스터디를이끌었으며,Microsoft공인강사가되어수많은강의와세미나를진행했다.결국,책도쓰게되었는데,이모든것이SQLServer를시작하는이에게디딤돌이되고자하는저자의바람때문이다.저자의끊임없는지식전달노력의결과로Microsoft에서수여한SQLServer분야MVPAward를수년간받았다.현직유명SQLServer강사이자컨설턴트인그에게서SQLServer를빼면뭐가남을지궁금하다.사랑하는딸에게뒤늦게피아노를배우기시작했고,플루트를배우겠다며밤새소리를찾아불어대는그의모습에,언제나배움의아름다움이배어있다.

목차

1장.SQLServer와데이터베이스
1.1.SQLServer소개
1.1.1.왜SQLServer를사용하는가?
1.1.2.SQLServer역사와버전
1.1.3.SQLServer에디션
1.2.SQLServer설치
1.2.1.SQLServer설치환경
1.2.2.SQLServer설치
1.2.3.SQLServer관리도구설치
1.2.4.연결확인
1.3.SSMS(SQLServerManagementStudio)사용
1.3.1.실행과연결
1.3.2.SSMS의다양한기능들
1.3.3.나만의SSMS환경꾸미기
1.3.4.SSMS사용팁
1.3.5.SSMS업데이트
1.4.데이터베이스구조이해
1.4.1.데이터베이스에대한이해
1.4.2.데이터베이스구조
1.4.3.트랜잭션로그(TransactionLog)파일
1.5.데이터베이스만들기
1.5.1.이름만지정하여만들기
1.5.2.입력할정보들
1.5.3.요구사항에맞게만들기
1.5.4.CREATEDATABASE문으로만들기
1.6.파일그룹(FileGroups)활용
1.6.1.파일그룹이란?
1.6.2.파일그룹종류
1.6.3.파일그룹만들기
1.6.4.파일그룹에테이블만들기

2장.테이블만들고관리하기
2.1.테이블만들기
2.1.1.학습준비
2.1.2.테이블에대한이해
2.1.3.테이블만들기
2.1.4.CREATETABLE문으로만들기
2.1.5.테이블관리
2.1.6.데이터정렬(Collations)
2.2.다양한데이터형식
2.2.1.데이터형식에대한이해
2.2.2.시스템데이터형식
2.2.3.수치데이터형식
2.2.4.날짜와시간데이터형식
2.2.5.문자데이터형식
2.2.6.기타특수한데이터형식
2.3.특수한형태의열
2.3.1.계산된열(ComputedColumns)
2.3.2.IDENTITY속성
2.4.데이터무결성(DataIntegrity)
2.4.1.데이터무결성이란?
2.4.2.NULL과NOTNULL
2.4.3.제약(Constraints)
2.5.HRDB2데이터베이스만들기
2.5.1.데이터베이스만들기구문
2.5.2.테이블만들기구문
2.5.3.데이터추가
2.6.임시테이블(TemporaryTables)
2.6.1.지역임시테이블과전역임시테이블
2.6.2.개체탐색기에서임시테이블확인
2.7.정규화(Normalization)
2.7.1.정규화와JOIN문
2.7.2.1차,2차,3차정규화
2.8.활용
2.8.1.테이블정보확인
2.8.2.테이블행수확인
2.8.3.FOREIGNKEY무시
2.8.4.특정열을갖는테이블찾기

3장.Transact-SQL기본구문익히기
3.1.HRDB2데이터베이스설명
3.1.1.데이터베이스다이어그램
3.1.2.테이블소개
3.2.기본적인데이터조회
3.2.1.SELECT문시작
3.2.2.다양한연산자
3.2.3.범위조건과리스트조건
3.2.4.NULL값비교
3.2.5.열별칭과열에대한계산
3.2.6.조회결과정렬
3.3.DML문을사용한데이터변경
3.3.1.INSERT문
3.3.2.UPDATE문
3.3.3.DELETE문
3.4.다양한데이터집계방법
3.4.1.SUM,AVG,MAX,MIN,COUNT함수
3.4.2.GROUPBY문
3.4.3.HAVING문
3.4.4.GROUPINGSETS문
3.5.쿼리수행흐름제어
3.5.1.IF…ELSE문
3.5.2.BEGIN…END문
3.5.3.WHILE문

4장.Transact-SQL필수구문익히기
4.1.순위와번호를표시하는다양한함수
4.1.1.RANK함수
4.1.2.DENSE_RANK함수
4.1.3.ROW_NUMBER함수
4.1.4.NTILE함수
4.2.PIVOT형태와UNPIVOT형태
4.2.1.PIVOT문
4.2.2.UNPIVOT문
4.3.세가지형태의조인(JOIN)문
4.3.1.JOIN이란?
4.3.2.INNERJOIN문
4.3.3.OUTERJOIN문
4.3.4.CROSSJOIN문
4.3.5.JOIN문작성
4.3.6.여러테이블간의JOIN문
4.4.일반하위쿼리와상관하위쿼리
4.4.1.일반하위쿼리
4.4.2.상관하위쿼리
4.5.손쉬운결과집합병합
4.5.1.UNION,UNIONALL문
4.5.2.INTERSECT문
4.5.3.EXCEPT문
4.6.기본적으로알아두어야할함수
4.6.1.날짜관련함수
4.6.2.문자열관련함수
4.7.쿼리문작성에대한단상
4.7.1.좋은쿼리문
4.7.2.고부하쿼리문
4.7.3.효율적인쿼리문작성지침

5장.향상된Transact-SQL작성을위하여
5.1.쿼리에강력함을더하는기능들
5.1.1.TOP(n)문
5.1.2.CASE문
5.1.3.CTE문
5.1.4.MERGE문
5.1.5.OUTPUT문
5.1.6.APPLY문
5.1.7.OVER문(SQLServer2012)
5.1.8.OFFSETFETCH문(SQLServer2012)
5.1.9.WITHRESULTSET문(SQLServer2012)
5.1.10.THROW문(SQLServer2012)
5.2.알아두면좋을낯선함수들
5.2.1.EOMONTH,CHOOSE,IIF함수(SQLServer2012)
5.2.2.CONCAT,FORMAT함수(SQLServer2012)
5.2.3.LAST_VALUE,FIRST_VALUE함수(SQLServer2012)
5.2.4.LEAD,LAG함수(SQLServer2012)
5.2.5.STRING_SPLIT함수(SQLServer2016)
5.2.6.SPACE,REVERSE함수(SQLServer2005)

6장.XML데이터다루기
6.1.XML데이터이해하기
6.1.1.XML문서소개
6.1.2.문자로취급하던XML데이터
6.1.3.XML데이터형식지원
6.1.4.XML스키마컬렉션으로무결성확보
6.2.XML형태로변환하는FORXML문
6.2.1.FORXML문이란?
6.2.2.FORXMLRAW문
6.2.3.FORXMLAUTO문
6.2.4.FORXMLEXPLICIT문
6.2.5.FORXMLPATH문
6.3.테이블형태로변환하는OPENXML함수
6.3.1.OPENXML함수란?
6.3.2.OPENXML함수사용예
6.4.XQuery로XML데이터다루기
6.4.1.XQuery란?
6.4.2.query메소드
6.4.3.value메소드
6.4.4.exist메소드
6.4.5.modify메소드
6.4.6.nodes메소드

7장.성능최적화를위한인덱스와통계
7.1.인덱스에대한이해
7.1.1.인덱스(Indexes)란?
7.1.2.인덱스는꼭필요한가?
7.1.3.인덱스구조
7.1.4.테이블존재형태
7.1.5.힙+비클러스터형인덱스
7.1.6.힙→클러스터형인덱스
7.1.7.클러스터형인덱스+비클러스터형인덱스
7.1.8.페이지분할(PageSplits)
7.2.다양한인덱스만들기
7.2.1.클러스터형인덱스
7.2.2.비클러스터형인덱스
7.2.3.포함된인덱스(IncludedIndexes)
7.2.4.필터된인덱스(FilteredIndexes)
7.3.성능을위한인덱스유지관리방법
7.3.1.인덱스다시구성과다시작성
7.3.2.FILLFACTOR옵션사용
7.3.3.인덱스제거
7.4.인덱스를고려한쿼리문작성
7.4.1.열변경하지않기
7.4.2.서로비교되는데이터형식일치시키기
7.4.3.불필요한구문삭제하기
7.4.4.첫번째인덱스키열고려하기
7.4.5.필요한열만SELECT절에나열하기
7.5.물리적인조인형태세가지
7.5.1.해시매치(HashMatch)
7.5.2.머지조인(MergeJoin)
7.5.3.중첩루프(NestedLoop)
7.6.통계개념과유지관리방법
7.6.1.통계이해하기
7.6.2.통계에의지하는SQLServer
7.6.3.수동통계갱신
7.7.활용
7.7.1인덱스현황조회
7.7.2인덱스단편화정도확인
7.7.3.ONLINE=ON옵션
7.7.4.인덱스비활성화와활성화

8장.프로그래밍개체
8.1.뷰(Views)
8.1.1.뷰에대한이해
8.1.2.뷰만들기와관리
8.2.저장프로시저(StoredProcedures)
8.2.1.저장프로시저에대한이해
8.2.2.저장프로시저만들기
8.2.3.입력매개변수와출력매개변수
8.2.4.오류핸들링
8.2.5.실행계획재사용과재컴파일
8.2.6.동적쿼리문(DynamicQueries)
8.3.사용자정의함수(UserDefinedFunctions)
8.3.1.사용자정의함수에대한이해
8.3.2.스칼라함수만들기
8.3.3.인라인테이블값함수만들기
8.3.4.다중문테이블값함수만들기
8.4.트리거(Triggers)
8.4.1.DML트리거에대한이해
8.4.2.DML트리거만들기
8.4.3.DDL트리거만들기
8.4.4.트리거구문요약
8.5.커서(Cursors)
8.5.1.커서에대한이해
8.5.2.커서사용하기
8.6.활용
8.6.1.CREATEORALTER
8.6.2.뷰새로고침(Refresh)
8.6.3.자동으로실행되는저장프로시저
8.6.4.동적쿼리문,나름의디버깅

9장.트랜잭션과잠금
9.1.트랜잭션에대한이해
9.1.1.트랜잭션(Transactions)이란?
9.1.2.트랜잭션로그(TransactionLogs)
9.1.3.자동커밋트랜잭션(AutoCommitTransact

출판사 서평

초급부터중급데이터베이스개발자를위한SQLServer개발가이드!

이책은아주간단한쿼리문부터고급쿼리기법까지배울수있는SQLServer개발자가이드입니다.Microsoft공인강사의생생한현장경험을바탕으로쉽고친절한개념설명과실용예제로구성하였습니다.무엇보다이책의가장큰강점은학습한내용을바로실무에적용해볼수있게구성하였다는데있습니다.이를위해SQLServer운영환경에맞게가상서버환경을구성하고,실무데이터가저장된데이터베이스를제공함으로써인덱스와튜닝등현장감넘치는쿼리문을구사해볼수있게하였습니다.

-출판사서평-

바로배워바로쓰는SQLServer개발편:현장감있는예제로실무까지직행한다!

이책은크게세가지단계로구성하였습니다.첫번째는데이터베이스를처음접하는독자를위해기본개념과구조를친절하게설명하고,DB와테이블생성부터데이터를다루는기본쿼리문의구조와원리를풍부한예제로실습합니다.두번째단계에서는데이터무결성,데이터집계,수행흐름제어,조인과함수등을통해초급에서벗어나데이터를자유자재로다룰수있게합니다.마지막세번째단계에서는중급이상의개발자를위해XML데이터를다루거나성능최적화를위한인덱스와통계,뷰와저장프로시저,트리거,트랜잭션등을다룹니다.따라서데이터베이스에관한전반적인지식을체계적으로정리할수있고,현재운용중인데이터베이스를튜닝하는데도도움을줍니다.

◆이책의특징과장점
-단순SELECT문부터다양한고급쿼리기법까지체계적으로다룬다.
-튜닝에도활용할수있는인덱스전략과쿼리작성기법을다룬다.
-독자의이해를돕고자학습용데이터베이스를별도로제공한다.
-실무에서꼭필요한내용은[Check]를통해복습하면서실력을점검한다.
-조금낯설지만정말유익한개발기법을마지막장에따로정리했다.
-궁금한사항은언제든네모사랑(nemosarang.com)게시판에질문할수있다.

◆어떤독자를위한책인가?
-데이터베이스를처음공부하는전공/비전공자
-쿼리문과관련된전반적인지식을체계적으로정리하고싶은자
-프로그래밍개체와인덱스에대해깊이있게배우고싶은개발자
-쿼리튜닝과인덱스튜닝에관심이있는중급개발자

※이책은SQLServer2016을기준으로설명합니다.
※이책의예제소스는루비페이퍼홈페이지http://www.rubypaper.co.kr자료실에서내려받을수있습니다.