업무
[MS-SQL]프로시저 분석
Eva_0401
2020. 9. 16. 17:26
- BEGIN TRAN
- MSSQL은 기본적으로 AUTO COMMIT이라, BEGIN TRAN 을 통해 검증하는 과정이 필요함.(실수를 줄이기 위해)
- TRY ~CATCH
- TRY 블록 내에서 오류가 발생하는 경우 CATCH 블록으로 묶은 또 다른 문의 그룹으로 제어
- SELECT TOP 1
- 테이블의 레코드를 조회할때 결과중 상위 몇개만 표시하기 위해 사용하는 구문
- delete 문에서 다른 테이블과 조인 걸고 삭제 가능
DELETE FROM 테이블A
FROM 테이블B
INNER JOIN 테이블 C
ON B.ID = C.ID
WHERE B.ID ='조건'
- SET NOCOUNT ON
- 쿼리문 또는 프로시저의 영향을 받은 행 수를 나타내는 메시지가 결과 집합의 일부로 반환되지 않도록 하는 것
- 프로시저 시작점에 set nocount on이라는 문구를 삽입해줌으로써 제거
- SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
- 트랜잭션 격리수준은 1. READ UNCOMMITTED , 2.READ COMMIT , 3. REPEATABLE READ , 4.SERIALIZABLE 로 나뉨
- READ UNCOMMITTED의 경우 S Lock을 걸지 않기 때문에, 다른 세션에서 커밋되지 않은 수정하는 데이터를 볼 수 있다.