안쪽 Microsoft SQL Server 2005: T-SQL 쿼리 주석 및 수정

기술 자료 번역 기술 자료 번역
기술 자료: 920141 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

요약

이 문서에서는 메모, 수정, 및 Microsoft 책 관련된 알려진된 오류에 대한 정보를 포함하는 안쪽 Microsoft SQL Server 2005: T-SQL 쿼리, 0-7356-2313-9.

다음 항목은 다룹니다.

  • 테이블 키 8 페이지: 수정
  • <table_expression> 태그 <right_table_expression> 태그 대신 사용되는 페이지 20:
  • 그림 2-7에서 누락된 페이지 43: 예
  • 페이지 51: MoreInfo 상자에 링크 올바르지 않습니다.
  • 페이지 68: 코드 샘플에서 THEN 반복되는
  • 페이지 73: "signal_wait_time_ms" "signal_wait_time" 합니다.
  • 표 3-3 공백 페이지 81: 없음
  • 페이지 101: "1000" 대신 "1000000" 사용되는
  • 페이지를 102, 103: "1000" 대신 "1000000" 사용되는
  • 페이지 137: 대신 정렬되지 않은 검색 참조되는 검색 순서
  • 페이지 139: "사용되지 않음" "사용할 수 없습니다"
  • 페이지 140: 쿼리 뒤에 단락 여섯 번째 문장의 120, 두 번째 orderid가 합니다.
  • 페이지 141: 인덱스 검색 대신 참조한 인덱스 스캔
  • 페이지 158: "크게 증가함에 따라" 라는 용어는 대신 사용됩니다, 용어 "낮은 가져옵니다"
  • 페이지 162: 맨 위에 있는 세 번째 줄에서 제거할 UNIQUE 및 orderid 대체하는 orderdate 합니다.
  • 페이지를 163-166: 정렬되지 않은 클러스터되지 않은 인덱스 스캔 정렬되지 않은 다루는 클러스터되지 않은 인덱스 스캔 로 참조되는
  • 페이지 168: "검색 조각화"합니다"페이지 밀도"
  • 고객 정보 대신 세션 정보를 참조하는 페이지 173:
  • 페이지 173: 3-7 테이블 이름 목록 BigSessions 대신 세션을 합니다.
  • "예" 페이지 187: 합니다 "no"
  • 네 번째 단락의 하위 쿼리 예제에서는 지침 페이지 192: 수정
  • 페이지 203: 변수 대신 변수 c 참조되는 b
  • 페이지 203: "NOT EXISTS" "EXISTS" 합니다.
  • 페이지 206: "MIN(keycol) + 1" "MIN(keycol + 1)" 합니다.
  • 페이지 272: "순위 함수를" 및 "재귀 쿼리" 대신 "PIVOT" 및 "UNPIVOT" 참조되는
  • 페이지 328: "실행" 슬라이딩 수 합니다 "
  • 페이지 340: 매년 수량 refered 아니라 매년 Orders 테이블 6-16 캡션
  • 페이지 356: 특성에서 누락된 기간
  • 잘못된 페이지 360: 쿼리
  • 표 6-24 두 번째 및 세 번째 열에 대한 페이지 364: 잘못된 레이블
  • 표 6-25 두 번째 및 세 번째 열에 대한 페이지 364: 잘못된 레이블
  • 페이지 412: "2147483648"-2147483648에서"합니다.
  • 페이지를 431 및 432: #CustStage #CustsStage 아닌 참조
  • 페이지 434: usp_AsyncSec refered 아닌 usp_AsyncSeq
  • 첫 번째 코드 샘플에서는 페이지 445: 잘못된 SET 문
  • 페이지 445: "여러" "" 하나여야 합니다.
  • 대신 fn_subordinates1 참조하는 페이지 480: fn_subordinates2
  • 페이지 485: < 합니다 < =
  • 페이지 493: "SubsSort" "SubsPath" 합니다.
  • 페이지 494: # @ 합니다.
  • 아포스트로피 페이지 506: 잘못된 사용
  • 페이지 513은: 참조-표 9-35 보다 구체적인 합니다.
  • 페이지 533: "BOMTC" "BOMCTE" 합니다.
  • 페이지 562: 36 램프 있는 램프 목록에서 없습니다.
  • 페이지 567로: Corretion Puzzle 19 응답 수

추가 정보

테이블 키 8 페이지: 수정

페이지에서 8, 세로 막대 아래쪽의 오류가 있습니다.

변경:

“ UNIQUE 및 PRIMARY KEY 제약 조건, 정렬 및 그룹화 처리 같이 등호 NULLs 때 반대로: 사용자가 정의된 PRIMARY KEY 또는 UNIQUE 제약 조건을 한 열에 NULL 가진 두 개의 행 테이블에 삽입할 수 없습니다. ”

다음과 같이 하십시오.

“ 다른 손으로 따라, UNIQUE 제약 조건과 정렬 및 그룹화 NULL로 등호 처리합니다: 사용자가 UNIQUE 제약 조건이 정의되어 있는 열에 NULL 두 행을 테이블에 삽입할 수 없습니다. ”

<table_expression> 태그 <right_table_expression> 태그 대신 사용되는 페이지 20:

20 페이지에 두 번째 테이블 연산자의 두 번째 줄을 읽습니다.

{CROSS | OUTER} APPLY <table_expression>


읽어야 합니다.

{CROSS | OUTER} APPLY <right_table_expression>


그림 2-7에서 누락된 페이지 43: 예

페이지에서 43 있는 그림 2-7, 합니다 "예" 가리키는 화살표 위에 "쿼리에 대해 병렬 계획을"단계 1 병렬 계획을"한정하는 않는다?" 에서.

페이지 51: MoreInfo 상자에 링크 올바르지 않습니다.

51 페이지에서 첫 번째 문장의 MoreInfo 상자 안의 변경해야 하는 것에 대한 링크가 포함되어 있습니다.

변경:
"에서 XML 실행 계획 데이터를 추출하는 예로 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsql90/html/xmlshowplans.asp에서 찾을 수 없습니다."

다음과 같이 하십시오.
"에서 XML 실행 계획 데이터를 추출하는 예로 http://msdn2.microsoft.com/en-us/library/ms345130.aspx에서 찾을 수 없습니다."

페이지 68: 코드 샘플에서 THEN 반복되는

68 페이지에 줄 32-35 코드 샘플을 읽습니다.

- CASE WHEN n % 10 = 0
	THEN THEN 1 + ABS(CHECKSUM(NEWID())) % 30
	ELSE 0
  END AS orderdate

읽어야 합니다.

- CASE WHEN n % 10 = 0
	THEN 1 + ABS(CHECKSUM(NEWID())) % 30
	ELSE 0
  END AS orderdate


페이지 73: "signal_wait_time_ms" "signal_wait_time" 합니다.

페이지의 마지막 단락 73 페이지에서 잘못된 wait_time가 포함되어 있습니다.

변경:
"DMV sys.dm_os_wait_stats 다음 특성을 포함합니다: wait_type이 대기 수는 waiting_tasks_count 형식 대기; 총 수 wait_time_ms이 대기 형식 밀리초 (signal_wait_time 포함), max_wait_time_ms; 및 대기 중인 스레드에 신호를 시간 간의 차이가 signal_wait_time 때까지 및 실행하는 시작하면."

다음과 같이 하십시오.
"DMV sys.dm_os_wait_stats 다음 특성을 포함합니다: wait_type이 대기 수는 waiting_tasks_count 형식 대기; 총 수 wait_time_ms이 대기 형식 밀리초 (signal_wait_time 포함), max_wait_time_ms; 및 대기 중인 스레드에 신호를 시간 간의 차이가 signal_wait_time_ms 때까지 및 실행하는 시작하면."

표 3-3 공백 페이지 81: 없음

81 페이지에서 "counter_name" 열에서 항목 읽기:

"Buffercachehitratio
버퍼 캐시 적중된 비율이 기본
Pagelookups/초
Freeliststalls/초
Freepages
Totalpages
Targetpages
Databasepages
Reservedpages
Stolenpages "

이들은 읽어야 합니다.

"버퍼 캐시 적중된 비율이
버퍼 캐시 적중된 비율이 기본
초당 페이지 조회
사용 가능한 목록에 주차칸/초
사용 가능한 페이지
전체 페이지
대상 페이지
데이터베이스 페이지
예약된 페이지
도난 당한 페이지 "

페이지 101: "1000" 대신 "1000000" 사용되는

101 페이지에서 예제 코드의 두 번째 및 네 번째 줄을 읽습니다.

CAST(AQ1.total_duration / 1000.

CAST(SUM(AQ2.total_duration) / 1000.

읽어야 합니다.

CAST(AQ1.total_duration / 100000.

CAST(SUM(AQ2.total_duration) / 100000.


페이지를 102, 103: "1000" 대신 "1000000" 사용되는

페이지에 102 및 103, 네 번째 및 여섯 번째 줄의 코드 읽기가 샘플:

CAST(AQ1.total_duration / 1000.

CAST(SUM(AQ2.total_duration) / 1000.

읽어야 합니다.

CAST(AQ1.total_duration / 100000.

CAST(SUM(AQ2.total_duration) / 100000.


페이지 137: 대신 정렬되지 않은 검색 참조되는 검색 순서

137 페이지에서 페이지의 세 번째 문장의 읽습니다.

"모두 순차적인 방식으로 데이터를 실제로 읽기 종료됩니다 있으므로 없음 조각화 전혀 인덱스 정렬된 스캔 성능이 매우 가깝게 정렬된 스캔 성능이 합니다."

읽어야 합니다.

"모두 순차적인 방식으로 데이터를 실제로 읽기 종료됩니다 있으므로 없음 조각화 전혀 인덱스 정렬된 스캔 성능이 매우 가깝게 정렬되지 않은 검색 성능을 합니다."

페이지 139: "사용되지 않음" "사용할 수 없습니다"

139 페이지에서는 페이지의 첫 번째 문장 순서를 벗어났습니다 "사용되지 않음" 라는 단어가 있습니다.

변경:
"정렬된 데이터를 명시적으로 요청할 때 정렬된 인덱스 스캔이 사용됩니다; 계획이 정렬된 입력된 데이터를 활용할 수 있는 연산자를 사용하는 경우 대신, 또한 사용됩니다."

다음과 같이 하십시오.
"아니라 명시적으로 정렬된 데이터를 요청할 때 정렬된 인덱스 스캔이 사용됩니다; 계획이 정렬된 입력된 데이터를 활용할 수 있는 연산자를 사용하는 경우 대신, 또한 사용됩니다."

페이지 140: 쿼리 뒤에 단락 여섯 번째 문장의 120 있는 orderid가 합니다.

페이지에서 140, 쿼리, 다음 단락에 있는 문장의 6 읽습니다.

"정렬된 부분 검색 범위에 있는 첫 번째 키에서 리프 수준에 있는 때까지 마지막 액세스 메서드의 두 번째 부분은 됩니다 (orderid = 101)."

읽어야 합니다.

"정렬된 부분 검색 범위에 있는 첫 번째 키에서 리프 수준에 있는 때까지 마지막 액세스 메서드의 두 번째 부분은 됩니다 (orderid 120 =)."

페이지 141: 인덱스 검색 대신 참조한 인덱스 스캔

141 페이지에서 마지막 단락의 첫째 문장이 읽습니다.

"실행 에서 계획할 노트를 명시적으로 액세스 방법 일부 검사를 일부가 보일 won’t; 대신, 인덱스 스캔 연산자를 숨겨진 처리하며."

읽어야 합니다.

"실행 에서 계획할 노트를 명시적으로 액세스 방법 일부 검사를 일부가 보일 won’t; 대신, 인덱스 검색 연산자를 숨겨진 처리하며."

페이지 158: "크게 증가함에 따라" 라는 용어는 대신 사용됩니다, 용어 "낮은 가져옵니다"

그림 3-49 후 단락의 두 번째 문장 158 페이지에서 읽습니다.

"쿼리의 선택도를 크게 증가하면 더 상당한 비용을 여기에 조회 중" 입니다.

읽어야 합니다.

"같이 쿼리의 선택도가 낮은 가져옵니다 (선택도가 낮은 높은 비율의 행 =), 여기에 조회 중 더 많은 비용이 듭니다."

페이지 162: 맨 위에 있는 세 번째 줄에서 제거할 UNIQUE 및 orderid 대체하는 orderdate 합니다.

162 페이지에서 위에서 세 번째 줄을 읽습니다.

"UNIQUE 클러스터되지 인덱스의 CREATE idx_cl_od ON dbo.Orders(orderid);"

읽어야 합니다.

"클러스터된 CREATE INDEX idx_cl_od ON dbo.Orders(orderdate);"

페이지를 163-166: 정렬되지 않은 클러스터되지 않은 인덱스 스캔 정렬되지 않은 다루는 클러스터되지 않은 인덱스 스캔 로 참조되는

표 3-16 두 번째 및 세 번째 행의 첫 번째 셀을 163 페이지에서 읽기:

"정렬되지 클러스터되지 않은 인덱스 스캔 포함

정렬되지 않은 클러스터되지 않은 인덱스 스캔 + 조회 포함 "

이들은 읽어야 합니다.

"정렬되지 않은 클러스터되지 않은 인덱스 스캔

정렬되지 않은 클러스터되지 않은 인덱스 스캔 + 조회 "

164 페이지에서 그림 3-55 키의 왼쪽 두 번째 및 세 번째 항목을 읽기:

"정렬되지 클러스터되지 않은 인덱스 스캔 포함

정렬되지 않은 클러스터되지 않은 인덱스 스캔 + 조회 포함 "

이들은 읽어야 합니다.

"정렬되지 않은 클러스터되지 않은 인덱스 스캔

정렬되지 않은 클러스터되지 않은 인덱스 스캔 + 조회 "

표 3-17 두 번째 및 세 번째 행의 첫 번째 셀을 164 페이지에서 읽기:

"정렬되지 클러스터되지 않은 인덱스 스캔 포함

정렬되지 않은 클러스터되지 않은 인덱스 스캔 + 조회 포함 "

이들은 읽어야 합니다.

"정렬되지 않은 클러스터되지 않은 인덱스 스캔

정렬되지 않은 클러스터되지 않은 인덱스 스캔 + 조회 "

165 페이지에서 그림 3-56 키의 왼쪽 두 번째 및 세 번째 항목을 읽기:

"정렬되지 클러스터되지 않은 인덱스 스캔 포함

정렬되지 않은 클러스터되지 않은 인덱스 스캔 + 조회 포함 "

이들은 읽어야 합니다.

"정렬되지 않은 클러스터되지 않은 인덱스 스캔

정렬되지 않은 클러스터되지 않은 인덱스 스캔 + 조회 "

그림 3-57 두 번째 및 세 번째 열에 대한 레이블을 166 페이지에서 읽기:

"정렬되지 클러스터되지 않은 인덱스 스캔 포함

정렬되지 않은 클러스터되지 않은 인덱스 스캔 + 조회 포함 "

이들은 읽어야 합니다.

"정렬되지 않은 클러스터되지 않은 인덱스 스캔

정렬되지 않은 클러스터되지 않은 인덱스 스캔 + 조회 "

페이지 168: "검색 조각화"합니다"페이지 밀도"

168 페이지에서 두 번째 단락의 세 번째 문장 "조각화 검색하도록" 잘못된 참조가 포함되어 있습니다.

변경:
"논리 검색 조각화의 결코 바람직한 동안 평균 검색 조각화의 두 가지 측면이 있습니다."

다음과 같이 하십시오.
"논리 검색 조각화의 결코 바람직한 동안 평균 페이지 밀도 두 가지 측면이 있습니다."

고객 정보 대신 세션 정보를 참조하는 페이지 173:

173 페이지에서 둘째 단락의 두 번째 문장의 읽습니다.

이상적으로는 사용하면 합니다 고객, 다른 순서로 날짜 수의 수 들기 수 및 "있습니다.

읽어야 합니다.

"이상적으로는 사용하면 현실적인 메일 세션 시작 시간, 세션 기간 등에 대한 생각이 수 합니다."

페이지 173: 3-7 테이블 이름 목록 BigSessions 대신 세션을 합니다.

페이지에서 173, 3-7 읽기 보기 캡션:

"부적절한 예제 데이터와 함께 세션을 채웁니다."

읽어야 합니다.

"BigSessions 부적절한 예제 데이터로 채우는"

"예" 페이지 187: 합니다 "no"

187 페이지에서 세 번째 문장 다음에 그림 3-66 잘못된 단어가 포함되어 있습니다.

변경:
"예 답은 경우 다른 찾기 작업을 주문 전혀 있는지 여부를 확인하려면 인덱스에 대해 호출됩니다."

다음과 같이 하십시오.
"없음, 다른 대답을 경우 검색 작업을 주문 전혀 있는지 여부를 확인하려면 인덱스에 대해 호출됩니다."

네 번째 단락의 하위 쿼리 예제에서는 지침 페이지 192: 수정

192 페이지의 네 번째 단락의 하위 쿼리 예제에서는 지침을 읽습니다.

"예를 들어, 다음 코드에서는 세 번 실행할: 같이 LIKE N’Kollar 사용하여 두 번 한 번 ’ LIKE N’Davolio 대신 ’ 를 및 % LIKE N을 세 번째로 'D:"

읽어야 합니다.

"예를 들어, 다음 코드에서는 세 번 실행할: 같이 LIKE N’Kollar 사용하여 두 번 한 번 ’ LIKE N’Davolio 대신 ’ 를 및 % LIKE N을 세 번째로 'D ':"

페이지 203: 변수 대신 변수 c 참조되는 b

203 페이지에서 페이지의 세 번째 문장의 읽습니다.

"b NOT IN(a, b, NULL) 조건자를 따라서 반환합니다 NOT c 고객 목록에 나타나지 않더라도 UNKNOWN, 및 고객 c = UNKNOWN 쿼리에서 한 반환되지 않습니다."

읽어야 합니다.

"조건부 c NOT IN(a, b, NULL) 따라서 반환합니다 NOT c 고객 목록에 나타나지 않더라도 UNKNOWN, 및 고객 c = UNKNOWN 쿼리에서 한 반환되지 않습니다."

페이지 203: "NOT EXISTS" "EXISTS" 합니다.

203 페이지에서 첫 번째 단락의 마지막 문장이 잘못된 쿼리를 포함합니다.

변경:
"NOT 쿼리 논리적으로 EXISTS 쿼리를 만들려면 (적절한 경우) NULL NOT NULL을 제외하려면 하위 필터를 추가할 때 열 선언할:"

다음과 같이 하십시오.
"NOT 쿼리 논리적으로 NOT EXISTS 쿼리를 만들려면 (적절한 경우) NULL NOT NULL을 제외하려면 하위 필터를 추가할 때 열 선언할:"

페이지 206: "MIN(keycol) + 1" "MIN(keycol + 1)" 합니다.

206 페이지에서 두 번째 단락의 세 번째 문장의 잘못된 식이 들어 있습니다.

변경:
"테이블에 1 doesn’t 경우 (즉, 두 번째 EXISTS 조건자는 항상 FALSE인 경우), 빈 집합 및 MIN(keycol) 식 필터를 생성하는 + 1 NULL을 반환합니다."

다음과 같이 하십시오.
"테이블에 1 doesn’t 경우 (즉, 두 번째 EXISTS 조건자는 항상 FALSE인 경우), 필터의 빈 집합이 생성하고 NULL MIN(keycol + 1) 식을 생성합니다."

페이지 272: "순위 함수를" 및 "재귀 쿼리" 대신 "PIVOT" 및 "UNPIVOT" 참조되는

272 페이지에서 페이지 아래쪽의 메모 첫 번째 문장을 읽습니다.

"이전 버전으로 데이터베이스 호환성 모드를 변경하면 사용하면 새 언어 요소 (예: 순위 함수를, 재귀 쿼리를 등) 사용하지 못하도록 합니다."

읽어야 합니다.

"이전 버전으로 데이터베이스 호환성 모드를 변경하면 사용하면 새 언어 요소 (예: PIVOT, UNPIVOT, 등) 사용하지 못하도록 합니다."

페이지 328: "실행" 슬라이딩 수 합니다 "

328 페이지에서 메모 상자의 후 첫 번째 문장의 잘못된 집계를 포함합니다.

변경:
"조인 조건 또는 의 하위 쿼리를 사용하여 대체 솔루션 사용하여 하위 필터 누적 집계 솔루션 및 집계 실행하기 위한 솔루션 간의 주요 차이점.."

다음과 같이 하십시오.
"조인 조건 또는 의 하위 쿼리를 사용하여 대체 솔루션 사용하여 하위 필터 누적 집계 솔루션 및 집계 슬라이딩에 대한 솔루션 간의 주요 차이점.."

페이지 340: 매년 수량 refered 아니라 매년 Orders 테이블 6-16 캡션

표 6-16 캡션 340 페이지에서 읽습니다.

"사용자 당 연간 수량 개수"

읽어야 합니다.

"사용자 당 연간 주문 개수"

페이지 356: 특성에서 누락된 기간

356 페이지에서 단계 15 다섯 번째 줄에서 마침표가 없는 특성을 포함합니다.

변경:
"네이티브 직렬화 있는 UDA 클래스 및 구조체 않는 정의한 경우 해당 StructLayoutAttribute StructLayout.LayoutKindSequential로 지정해야 합니다."

다음과 같이 하십시오.
"네이티브 직렬화 있는 UDA 클래스 및 구조체 않는 정의한 경우 해당 StructLayoutAttribute StructLayout.LayoutKind.Sequential로 지정해야 합니다."

잘못된 페이지 360: 쿼리

360 페이지에서 페이지 위쪽의 쿼리가 잘못되었습니다.

변경:
SELECT groupid,
CAST(ROUND(EXP(SUM(LOG(ABS(NULLIF(val,0)))))*
(1-SUM(1-SIGN(val))%4)*(1-SUM(1-SQUARE(SIGN(val)))),0) AS INT)
AS product
FROM dbo.Groups
GROUP BY groupid;

수:
SELECT groupid,
CAST(ROUND(EXP(SUM(LOG(ABS(NULLIF(val,0)))))*
(1-SUM(1-SIGN(val))%4)*(1-MAX(1-SQUARE(SIGN(val)))),0) AS INT)
AS product
FROM dbo.Groups
GROUP BY groupid;


표 6-24 두 번째 및 세 번째 열에 대한 페이지 364: 잘못된 레이블

페이지에서 364, 열 레이블 표 6-24:

groupid agg_or agg_or_binval

이들은 읽어야 합니다.

groupid agg_and agg_and_binval

표 6-25 두 번째 및 세 번째 열에 대한 페이지 364: 잘못된 레이블

364 페이지에 열 레이블을 표 6-25 읽기:

groupid agg_or agg_or_binval

이들은 읽어야 합니다.

groupid agg_xor agg_xor_binval

페이지 412: "2147483648"-2147483648에서"합니다.

412 페이지에서 마지막 단락 두 번째 첫 번째 문장의 잘못된 정수가 포함되어 있습니다.

변경:
"CHECKSUM 정수를 2147483648-2147483647 사이의 반환합니다."

다음과 같이 하십시오.
"CHECKSUM 정수를 -2147483648에서 2147483647 사이의 반환합니다."

페이지를 431 및 432: #CustStage #CustsStage 아닌 참조

마지막 단락 일곱 및 eigth 문장을 431 페이지에서 읽기:

"UPDATE 단일 패스를 #CustStage 행 위에 있습니다. UPDATE 방문하는 모든 행을 사용하여 이를 KeyCol 및 @ 키를 @ 키 + 1의 값을 저장합니다. 이 새 행 방문한 모든 @ 키를 하나씩 증가하는 KeyCol에 저장된 의미입니다. 기본적으로 새 블록을 시퀀스 값 #CustStage 각 행을 배포할. "

이들은 읽어야 합니다.

"UPDATE 단일 패스를 #CustsStage 행 위에 있습니다. UPDATE 방문하는 모든 행을 사용하여 이를 KeyCol 및 @ 키를 @ 키 + 1의 값을 저장합니다. 이 새 행 방문한 모든 @ 키를 하나씩 증가하는 KeyCol에 저장된 의미입니다. 기본적으로 새 블록을 시퀀스 값 #CustsStage 각 행을 배포할. "

432 페이지에서 페이지의 첫 번째 문장의 읽습니다.

"이전 지시한 대로 시퀀스 값을 0으로 다시 후 이 코드를 #CustStage 7개의 영국 고객이 7-1에서 사이의 KeyCol 값이 포함됩니다."

읽어야 합니다.

"이전 지시한 대로 시퀀스 값을 0으로 다시 후 이 코드를 #CustsStage 7개의 영국 고객이 7-1에서 사이의 KeyCol 값이 포함됩니다."

432 페이지에서 두 번째 단락의 첫째 문장이 읽습니다.

특수화된 T-SQL UPDATE 문을 표준 아닙니다 및 "#CustStage 특정 순서로 행을 액세스함 보장하는 doesn’t.

읽어야 합니다.

특수화된 T-SQL UPDATE 문을 표준 아닙니다 및 "#CustsStage 특정 순서로 행을 액세스함 보장하는 doesn’t.

페이지 434: usp_AsyncSec refered 아닌 usp_AsyncSeq

434 페이지에서 읽기 두 번째 문장 다음에 있는 메모 상자.

"롤백 커지는 것을 AsyncSeq 테이블에 없습니다. 실제로 절대로 usp_AsyncSec 호출 모든 행이 포함될 수 있습니다. "

읽어야 합니다.

"롤백 커지는 것을 AsyncSeq 테이블에 없습니다. 실제로 절대로 usp_AsyncSeq 호출 모든 행이 포함될 수 있습니다. "

첫 번째 코드 샘플에서는 페이지 445: 잘못된 SET 문

페이지에서 445 마지막 두 줄을 첫 번째 샘플에서는 읽기 코드:

	WHERE C.CustomerID = dbo.Orders.CustomerID);
WHERE C.Country = 'USA';


이들은 읽어야 합니다.

	WHERE C.CustomerID = dbo.Orders.CustomerID);
WHERE CustomerID IN
  (SELECT CustomerID FROM dbo.Customers WHERE Country = 'USA');


페이지 445: "여러" "" 하나여야 합니다.

445 페이지에서. 마지막 단락의 두 번째 문장의 잘못된 쪽 참조가 들어 있습니다.

변경:
"한 일대다 조인 “ 많은 ” 쪽에 있는 테이블을 수정할 때 사용자가 확정적이지 업데이트로 결국 수도 있습니다."

다음과 같이 하십시오.
"한 일대다 조인 “ 한 ” 쪽에 있는 테이블을 수정할 때 사용자가 확정적이지 업데이트로 결국 수도 있습니다."

대신 fn_subordinates1 참조하는 페이지 480: fn_subordinates2

페이지에서 480, 목록 9-8 읽기 전에 마지막 문장의 다음을 수행합니다.

"또한 수준 제한을 지원하는 fn_subordinates2의 수정 버전입니다 fn_subordinates2 함수를 만들려면 9-8 목록 코드를 실행하여."

읽어야 합니다.

"또한 수준 제한을 지원하는 fn_subordinates1의 수정 버전입니다 fn_subordinates2 함수를 만들려면 9-8 목록 코드를 실행하여."

페이지 485: < 합니다 < =

페이지 485, 코드 샘플에 잘못된 기호가 12 줄에 주석이 있습니다.

변경:
-- and previous level < @maxlevels

수:
-- and previous level <= @maxlevels

페이지 493: "SubsSort" "SubsPath" 합니다.

권장 크기: 496 페이지에서 페이지의 샘플 코드 줄을 36 SubsPath "SubsSort" 로 대체될 있어야 합니다.

변경:
-- #SubsPath is a temp table that will hold the final

수:
-- #SubsSort is a temp table that will hold the final

페이지 494: # @ 합니다.

페이지 494, 코드 샘플에 잘못된 기호를 마지막 INSERT 문은 위의 네 번째 메모를 포함합니다.

변경:
-- Load the rows from #SubsPath to @SubsSort sorted by the binary

수:
-- Load the rows from #SubsPath to #SubsSort sorted by the binary

아포스트로피 페이지 506: 잘못된 사용

마지막 두 번째 페이지에서 506, 네 번째 문장의 단어 직원 앞에 아포스트로피 단락 잘못된 페이지에 배치합니다.

변경:
"그렇지 않으면, 해당 수준에 있는 부모 수준 1을 더한, 해당 경로는: 부모 경로 + ‘ 직원 ID + ‘. ’."

다음과 같이 하십시오.
"그렇지 않으면, 해당 수준에 있는 부모 수준 1을 더한, 해당 경로는: 부모 경로 + 직원 ID + ‘. ’."

페이지 513은: 참조-표 9-35 보다 구체적인 합니다.

513은 페이지에서 처음 두 문장을 읽을 페이지의 전체:

"각 요청에 대해 I 표 9-35 표시된 출력을 뒤에는 샘플 쿼리 제공하는. 주어진 루트 하위 트리를 반환하는: "

읽어야 합니다.

"각 요청에 대해 난 다음에 해당 출력 예제 쿼리를 제공하는. 표 9-35 표시된 출력을 생성하는 주어진 루트 하위 트리를 반환하는: "

페이지 533: "BOMTC" "BOMCTE" 합니다.

533 페이지에서 첫 번째 문장 다음에 표 9-50 잘못된 머리글자어가 포함되어 있습니다.

변경:
"이 이 솔루션은 중복 가장자리가 BOMCTE 있는 외부 쿼리의 DISTINCT 절이 적용하여 찾을 필요가 없습니다."

다음과 같이 하십시오.
"이 이 솔루션은 중복 가장자리가 BOMTC 있는 외부 쿼리의 DISTINCT 절이 적용하여 찾을 필요가 없습니다."

페이지 562: 36 램프 있는 램프 목록에서 없습니다.

562 페이지에서 첫 번째 문장의 Puzzle 10 응답 메시지는 다음과 같습니다.

"모든 램프 해제되어 램프 번호가 1, 4, 9, 16, 25, 49, 64, 81, 및 있는 100 제외하고 있습니다."

읽어야 합니다.

"모든 램프 해제되어 램프 번호가 1, 4, 9, 16, 25, 36, 49, 64, 81, 및 있는 100 제외하고 있습니다."

페이지 567로: Corretion Puzzle 19 응답 수

시 567로, 아래의 페이지 "19 Puzzle: 패턴이 있는 시퀀스 찾기", 이런 마지막 문장을, 첫 번째 숫자 시퀀스의 - 4 - 실수로 추가되었습니다.

변경:

"여기에 몇 가지 추가 번호가 시퀀스의 첫 번째 부분은 처리하며: 4, 3, 3, 5, 4, 4, 3, 5, 5, 4, 3, 6, 6, 8, 8, 7, 7, 9, 8, 8, 6, 9, 9, 11, 10, 10, 9, 11, 11, 10, …"

다음과 같이 하십시오.

"여기에 몇 가지 추가 번호가 시퀀스의 첫 번째 부분은 처리하며: 3, 3, 5, 4, 4, 3, 5, 5, 4, 3, 6, 6, 8, 8, 7, 7, 9, 8, 8, 6, 9, 9, 11, 10, 10, 9, 11, 11, 10, …"

Microsoft 정보 및 정확한 책을 제공하기 위해 노력하고 있습니다. 모든 메모 및 수정 위에 나열된 포함될 내용이 책의 대한 향후 printings 준비가 되었습니다. 이 설명서의 이후 인쇄하는 있을 경우 이를 이미 대부분 또는 모두 위의 수정 포함될 수 있습니다.

속성

기술 자료: 920141 - 마지막 검토: 2007년 10월 24일 수요일 - 수정: 1.14
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Inside Microsoft SQL Server 2005: T-SQL Querying, ISBN 0-7356-2313-9
키워드:?
kbmt KB920141 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com