SQL Server 123

DBCC CHECKPRIMARYFILE 사용법

DBCC CHECKPRIMARYFILE 사용법 Version : SQL Server 2005, 2008, 2008R2, 2012, 2014 현재 생성되어 있는 데이터베이스의 파일정보를 확인하는 방법에는 SSMS를 활용한 방법과 쿼리로 확인하는 방법이 있다. SSMS의 UI를 사용하는 경우 데이터베이스 수 만큼 클릭하여 확인해야 하는 반복적인 노동 작업이다. 문서화 되지 않은 DBCC CHECKPRIMARYFILE 명령을 이용하면 파일의 메타 정보(디스크 경로, 데이터베이스 이름)를 쉽게 확인 할 수 있다. 비록 문서화 되어 있지 않은 명령어 이지만 위험성이 없는 작업이므로 걱정하지 않아도 된다. [기본 구문] Syntax:DBCC CHECKPRIMARYFILE ({'PhysicalFileName'} [,..

비결정적 사용자 정의 함수 사용으로 인한 느린 쿼리

비결정적 사용자 정의 함수 사용으로 인한 느린 쿼리 Version : SQL Server 2005, 2008, 2008R2, 2012, 2014 SQL Server에서는 사용자 정의 함수를 생성하고 사용할 수 있다. 사용자 정의 함수는 매개변수를 허용하고 복잡한 계산 등의 동작을 수행하며 해당 동작의 결과를 값으로 반환한다. 반환 값은 단일 스칼라 값이나 테이블일 수 있다. 사용자 정의 함수 만들기 : http://msdn.microsoft.com/ko-kr/library/ms186755.aspx 이번 포스트는 비결정적인 사용자 정의 함수로 인하여 쿼리가 느린 상황을 살펴보고 해결하는 방법에 대해서 살펴본다. 포스트의 내용은 CSS SQL Engineers를 참고 하였으며 읽고 이해한 내용을 정리하였다...

스냅숏 격리 수준(SNAPSHOT ISOLATION LEVEL)

스냅숏 격리 수준(SNAPSHOT ISOLATION LEVEL) Version : SQL Server 2005, 2008, 2008R2, 2012, 2014 트랜잭션 격리 수준은 SQL Server에 연결하여 실행하는 T-SQL문의 잠금 및 행 버전 관리 기능을 제공한다. 격리 수준은 여러 종류가 있으며 격리 수준 기능은 다음과 같다. SNAPSHOT 격리 수준은 트랜잭션에서 읽은 데이터가 다른 트랜잭션으로부터 일관성이 유지되도록 한다. 트랜잭션은 시작되기 전에 커밋된 데이터 내용만 인식할 수 있다. 현재 트랜잭션이 시작된 후 다른 트랜잭션에서 수정한 데이터는 현재 트랜잭션에서 실행되는 결과에 표시되지 않는다. 따라서 트랜잭션의 결과는 트랜잭션 시작 당시 커밋된 데이터의 스냅숏을 가져오는 것처럼 보인다...