반응형

WorkaHolic/MSSQL 87

MSSQL PIVOT AND UNPIVOT

SQL 서버 2000에서 관계형 데이터에 행별로 저장된 값을, 가로 테이블로 된 형식으로 보기 위해서는 CASE문을 써야만 그렇게 볼 수 있었다. 하지만 SQL 서버 2005에서는 PIVOT 연산자를 이용하여 간단히 구현할 수 있다. 한 예로 연도별 판매사원의 매출을 구하는 예제를 보도록 하자. 다음은 SQL 서버 2000 방식으로 구현한 예제다. [코드1]SELECT SalesPersonID ,SUM( case Year(OrderDate) when 2002 then TotalDue else 0 end ) as [2002] ,SUM( case Year(OrderDate) when 2003 then TotalDue else 0 end ) as [2003] ,SUM( case Year(OrderDate) w..

WorkaHolic/MSSQL 2010.04.28

MSSQL 2005 Mirroring 설정

MSSQL 2005 Mirroring 설정 작성자 : 개발팀 정성학 이메일 : hakburi@naver.com 1. Mirroring 개요 데이터베이스 미러링은 데이터베이스의 가용성을 높여 주는 주요 소프트웨어 솔루션입니다. 미러링은 데이터베이스 단위로 구현되며 전체 복구 모델을 사용하는 데이터베이스에서만 작동합니다. 단순 복구 모델 및 대량 로그 복구 모델에서는 데이터베이스 미러링이 지원되지 않습니다. 데이터베이스 미러링은 상시 대기 서버를 유지함으로써 작동합니다. 일반적인 미러링 세션 중 프로덕션 서버에 문제가 발생하면 클라이언트 응용 프로그램에서 대기 서버에 다시 연결하여 빠르게 복구할 수 있습니다. (참고 : master, msdb, tempdb 또는 model 데이터베이스는 미러링할 수 없습니다..

WorkaHolic/MSSQL 2010.04.26

MSSQL2005 - try.. catch를 이용한 에러 모니터링

개발 과정이나 서비스 중에 있는 데이터베이스에서 발생하는 에러를 테이블로 관리하여 실시간 집계 및 분석을 위한 스크립트이며 AdventureWorks 에 있는 sp 를 수정하였습니다. ^^ /*------------------------------------------------------------ title : MS-SQL2005 - Try Catch를통한구조화된에러처리 description : error log를테이블로관리하여보여주자. SQL2000 에서사용하는에러처리는모든구문마다@@error 를받아서처리해주고 goto 문을사용하는등구조적이지못한방법으로처리했는데 SQL2005에사용되는try ..catch 문으로에러처리를할수있게되었습니다. 트랜젝션을사용하는경우XACT_STATE() 함수를이용하여처리하..

WorkaHolic/MSSQL 2010.04.26

MSSQL 500만건 랜덤 데이타 생성하기

1. 500만건 데이타 만들기 -- 테이블 생성 CREATE TABLE random_data ( col1 int PRIMARY KEY IDENTITY(10,10) NOT NULL, col2 int NOT NULL DEFAULT CASE -- Random integer between -9999 and +9999 WHEN CONVERT(int, RAND() * 1000) % 2 = 1 THEN (CONVERT(int, RAND() * 100000) % 10000 * -1 ) ELSE CONVERT(int, RAND() * 100000) % 10000 END, col3 char(15) NOT NULL DEFAULT CHAR((CONVERT(int, RAND() * 1000) % 26 ) + 65) -- 65 ..

WorkaHolic/MSSQL 2010.04.08

SQL Server for Developer: 개발자를 위한 튜닝 가이드 _ 2/2

SQL Server for Developer: 관리자를 위한 튜닝 가이드 인덱스 수칙1. 적절한 인덱스가 걸려있는가? (I/O 가 많은 경우 실행 계획 재검사) 수칙2. 인덱스 튜닝마법사로 점검했는가? 수칙3. 상황 발생시 인덱스 채우기 비율을 조정하는가? 6. 인덱스 번호 수칙 체크 1 적절한 인덱스가 걸려있는가? (I/O 가 많은 경우 실행 계획 재검사) 2 인덱스 튜닝마법사로 점검했는가? 3 상황 발생시 인덱스 채우기 비율을 조정하는가? 수칙1.적절한 인덱스가 걸려 있는가? 적절한 인덱스가 걸려있는지 인덱스 튜닝마법사로 확인할 수 있습니다. 또는 CTRL + K로 실행계획을 관찰 해도 됩니다. 인덱스를 만들어야 하는 장소 가. 참조키 나. 참조키가 아니더라도 join에 빈번히 사용되는 경우 다. s..

WorkaHolic/MSSQL 2010.04.08

SQL Server for Developer: 개발자를 위한 튜닝 가이드 _ 1/2

SQL Server for Developer: 개발자를 위한 튜닝 가이드 본 튜닝 가이드는 경험 있는 SQL관리자와 초보자 모두에게 도움이 되도록 기초부터 고급까지 튜닝에 꼭 필요한 내용을 최대한 쉬운 예제를 통해 기술했습니다. 예제는 쉽더라도 그 내용은 무척 중요하므로 꼭 따라 하면서 본 튜닝 가이드를 실습하여 봅시다. 쿼리 디자인 수칙1. SELECT는 필요한 결과값만을 요구하는가? 수칙2. 적절한 WHERE조건을 사용하는가? 수칙3. COUNT(컬럼명) 대신 COUNT(*)을 사용하는가? 수칙4. 커서 및 임시 테이블의 내용을 최대한 자제하는가? 수칙5. VIEW의 총 사용을 줄였는가? 수칙6. 저장 프로시저를 사용하는가? 수칙7. 저장 프로시저를 적절하게 리컴 파일 하며 사용하는가 ? 수칙8. 작..

WorkaHolic/MSSQL 2010.04.08

MSSQL2005 Try ~ Catch 에러 모니터링

calmryu님의 블로그 | calmryu http://blog.naver.com/calmryu/70028455506 개발 과정이나 서비스 중에 있는 데이터베이스에서 발생하는 에러를 테이블로 관리하여 실시간 집계 및 분석을 위한 스크립트이며 AdventureWorks 에 있는 sp 를 수정하였습니다. ^^ /*------------------------------------------------------------ title : MS-SQL2005 - Try Catch를통한구조화된에러처리 description : error log를테이블로관리하여보여주자. SQL2000 에서사용하는에러처리는모든구문마다@@error 를받아서처리해주고 goto 문을사용하는등구조적이지못한방법으로처리했는데 SQL2005에사용되..

WorkaHolic/MSSQL 2010.04.08

MSSQL JOIN METHOD

꿈이 현실로... | 구운계란 http://blog.naver.com/ssayagain/90036001354 조인 방식 (Join Method) MS SQL에서 지원하는 조인 메소드에 대해 알아보자. 1. 들어가며 MS SQL에서 지원하는 물리적인 조인 방식에는 크게 3가지가 있다. ① 중첩반복(Nested Loops) ② 정렬병합(Sort Merge) ③ 해시매치(Hash Match) 이중 Nested Loops와 Sort Merge는 어느 DBMS든 가장 전통적인 조인 방식이고 서로간의 단점을 보완하고자 나왔다. Hash Match의 경우는 위의 두 조인 방식의 단점을 보완하고자 나온 방식이다. 그렇다면 Nested Loops와 Sort Merge의 장점, 특징 등을 알아보고 두 조인 방식의 단점이 ..

WorkaHolic/MSSQL 2010.04.08
반응형