티스토리 뷰
SET NOCOUNT ON
- INSERT, SELECT, UPDATE 등의 SQL문을 저장프로시저 등에서 실행하면 처리 건수를 클라이언트로 표시하거나 전달되어 예기치 않은 오류가 발생.
SET NOCOUNT ON 옵션을 설정하면 결과를 만들면서 발생되는 적용 건수 등의 불필요한 데이터가 리턴되지 않는다.
SET TRANSACION ISOLATION LEVEL READ UNCOMMITTED
- 기본 트랜잭션 격리 수준은 [READ COMMITTED]모드로 다른 사용자가 데이터를 변경시 다른 사용자는 트랜잭션이 완료될 때까지 대기현상이 발생되어 시스템 속도가 매우 느리거나 오류가 발생
이러한 문제점을 해결하기 위해 다른 사용자가 변경 중인 데이터를 포함하여 대기 없이 읽을 수 있도록 설정하는 것
데이터의 신뢰성은 떨어지지만 대기 없이 빠른 속도를 기대할 수 있어 매우 신뢰성 있고 정확한 보고서 데이터가 아니라면 이 옵션을 많이 사용
SET LOCK_TIMEOUT 5000
- 다른 사용자가 데이터를 변경하여 장시간 LOCK이 설정되어 있는 경우 특정 시간동안 기다리다 해제되지 않아 더이상 진행 되지 않았을 경우 오류를 발생 시키는 설정
- 데이터베이스의 DEAD LOCK 문제를 어느 정도 줄이거나 예방
*5000 = 5초
SET ANSI_WARNINGS OFF
SET APITHIGNORE ON
SET APITHABORT OFF
- 수식을 계산하면서 0으로 값을 나눌 경우 오류가 발생되어 프로시저가 중단되는 문제를 해결하기 위한 방법
대신 0으로 나누면 NULL값으로 결과가 리턴되기 때문에 ISNULL() 함수를 함께 사용하는 것을 권장
SET NOCOUNT ON
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
SET LOCK_TIMEOUT 5000
CREATE TABLE #SET테스트테이블(
CODE NVARCHAR(40),
CNT NUMERIC(18, 0)
)
INSERT INTO #SET테스트테이블(CODE, CNT)
VALUES ('A1', 100), ('A2', 200), ('A3', 300)
SELECT
*
FROM #SET테스트테이블
WHERE CODE = 'A1'
SET ANSI_WARNINGS OFF
SET ARITHIGNORE ON
SET ARITHABORT OFF
SELECT 100/0
SELECT ISNULL(100/0, 0)
* 도서 'MSSQL Server 기본에서 실무까지' 참조
'SQL > MSSQL' 카테고리의 다른 글
[MSSQL] 반복 로직 - 구구단 (0) | 2021.09.09 |
---|---|
[MSSQL] 재귀호출 (0) | 2021.08.18 |
[MSSQL] 동적SQL (0) | 2021.08.10 |
[MSSQL] 자료 처리 저장프로시저 개발 절차 및 기본 구성 (0) | 2021.08.02 |
[MSSQL] 자료 조회 저장프로시저(SP) 개발 절차 및 기본 구성 (0) | 2021.07.28 |
- Total
- Today
- Yesterday
- MS SQL Server 기본에서 실무까지
- 스타트 스프링 부트
- 리눅스
- 처음 배우는 스프링 부트2
- 스타트 스피링 부트
- 강제 타입 변환
- 모든 웹을 위한 JavaScript jQuery 입문
- 자바
- 자바스크립트&제이쿼리
- 스프링부트 퀵스타트
- Java
- Python
- 리액트를 다루는 기술
- 손에 잡히는 10분 SQL
- 모던 웹을 위한 JavaScript jQuery 입문
- Linux
- MSSQL
- JavaScript
- 스프링부트 퀵 스타트
- 배워서 바로 쓰는 스프링 부트 2
- JAVA 기본기 다지기 프로젝트
- MSSQL 기본에서 실무까지
- 스프링부트퀵스타트
- 스프링부트 퀵스타터
- 모던 웹을 위한 JavaScript + jQuery 입문
- Vue.js
- springboot
- 프로시저
- MSSQL Server 기본에서 실무까지
- 스프링 부트 퀵스타트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |