일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 삼성전자 소프트웨어멤버십 SSM
- 물걸레자동세척로봇청소기
- 나르왈프레오
- Neural Network
- 빅데이터
- 물걸레로봇청소기추천
- 갤럭시탭S8울트라
- Python
- 가상화
- 인공지능
- NarwalFreo
- 구글 앱 엔진
- 삼성소프트웨어멤버십
- BAM
- 신경회로망
- 파이썬
- 삼성
- Google App Engine
- hopfield network
- 신경망
- 증강현실
- Bidirectional Associative Memory
- 고려대학교
- 패턴 인식
- 동아리
- Friendship
- 패턴인식
- SSM
- 하이퍼바이저
- 멤버십
- Today
- Total
정보공간_1
[6기 부산 오승민] Transact-SQL(T-SQL) #5 - 프로그래밍 본문
[6기 부산 오승민] Transact-SQL(T-SQL) #5 - 프로그래밍
알 수 없는 사용자 2014. 10. 20. 08:281. T-SQL 프로그래밍
T-SQL은 DDL, DML 등 기본적인 SQL 구문뿐만 아니라 사용자가 원하는 결과를 만들 수 있도록 변수, 조건문, 반복문 등 많은 기능을 제공합니다.
2. 변수
1. 변수 선언
- DECLARE 키워드를 사용하여 변수 선언을 명시합니다.
- 변수명은 '@'로 시작합니다.
- 변수명 뒤에는 변수의 데이터 형식을 선언해야 합니다.
다음은 변수 선언의 예시입니다.
위 소스는 이름이 @var1 이고 데이터형식은 INT인 변수를 선언하는 구문입니다.
2. 값 할당
- SET 키워드를 사용하여 변수에 값을 할당합니다.
다음은 변수 선언의 예시입니다.
1. 에서 선언했던 @var1 변수에 데이터 1을 할당하는 구문입니다.
3. 값 출력
- SELECT 혹은 PRINT 키워드로 값을 출력할 수 있습니다.
- SELECT 키워드로 값을 출력할 경우 질의를 날려 응답받는 것과 같은 결과를 반환합니다.
- PRINT 키워드로 값을 출력하면 SQL Server 상에서 메시지로 값을 출력합니다.
3. 조건문
1. IF, ELSE
- 조건에 따라 분기하는 조건문입니다.
- IF와 ELSE 키워드 다음에 실행되는 구문이 두 개 이상이라면 구문을 BEGIN과 END 키워드를 사용하여 감싸주어야 합니다. 하나의 구문만 있다면 BEGIN과 END를 꼭 사용하지 않아도 됩니다.
위 소스코드 실행결과 0이 출력되었습니다.
IF 절에서 비교하는 부분이 TRUE이기 때문에 @var2 에 0을 할당하고 @var2 의 갑을 출력한 후 종료되었습니다.
IF 절처럼 두 개 이상의 구문을 사용할 경우 꼭 BEGIN과 END로 감싸주어야 하고
ELSE 절처럼 하나의 구문이 실 될 때에는 BEGIN과 END를 생략할 수 있습니다.
2. IF 문, 여러 조건에 따라 분기
- 조건이 두 개 이상이면 다음과 같이 IF, ELSE 구문을 중첩하여 사용합니다.
위 소스코드는 ELSE 이후 IF 절을 한 번 더 사용하여 3개의 분기 문을 만들었습니다.
실행한 결과 3이 출력되었습니다.
3. CASE
- T-SQL은 여러 조건에 따라 분기할 수 있는 CASE 문을 제공합니다.
- CASE 문은 실행 후 값 하나를 반환합니다.
- WHEN 키워드 다음에 비교조건을 명시하고 THEN 키워드 뒤에 반환할 값을 입력합니다.
위 소스코드는 '2. IF, 여러 조건에 따라 분기'에 예시한 소스코드와 같은 기능을 수행합니다. IF, ELSE 구문이 중첩되는 것보다 간결해졌습니다.
CASE 문의 최종 반환 값은 2이며 이 값을 @var2 변수에 할당하고 출력하는 구조입니다.
4. 반복문
1. WHILE
- T-SQL에서도 WHILE 문을 사용할 수 있습니다.
- WHILE 키워드 다음에 조건을 명시합니다.
- BREAK 키워드로 반복문을 도중에 종료할 수 있습니다.
- CONTINUE 키워드를 사용해 비교 부분으로 이동할 수 있습니다.
10번 반복한 후 결과를 출력하는 소스코드입니다. IF 문과 같이 실행하는 구문이 두 개 이상일 경우 BEGIN과 END로 감싸주어야 합니다.
5. 예외처리
1. TRY, CATCH
- T-SQL은 JAVA와 C#등의 언어에서 제공하는 TRY, CATCH 기능을 지원합니다.
위 소스코드의 경우 @var1 변수의 데이터 형식은 INT 인데 VARCHAR 데이터 형식의 값을 할당하려는 순간 런타임 에러가 발생하여 CATCH 절로 이동하였습니다.
이렇게 에러가 발생하여 프로그램이 중단되지 않도록 예외처리를 할 수 있습니다.
6. 마치며
이번 장에서는 T-SQL에서 지원하는 기본적인 프로그래밍 기능에 대해 알아보았습니다.
위 기능 말고도 GOTO 절 등 다양한 기능들이 있으니 꼭 찾아보시기 바랍니다.
'IT 놀이터 > Elite Member Tech & Talk' 카테고리의 다른 글
[6기 강남 윤재석] 안드로이드 프레임워크 빌드 & 포팅 (Nexus S) (0) | 2014.10.20 |
---|---|
[6기 부산 오승민] Transact-SQL(T-SQL) #6 - SQL Server 사용 환경 (0) | 2014.10.20 |
[6기 부산 오승민] Transact-SQL(T-SQL) #4 - 저장 프로시저 (0) | 2014.10.20 |
[6기 부산 오승민] Transact-SQL(T-SQL) #3 - FILE TABLE (0) | 2014.10.20 |
[6기 강남 윤재석] SOAP & REST (0) | 2014.10.15 |