T-SQL 5

Transact-SQL(T-SQL) #5 - 프로그래밍

1. T-SQL 프로그래밍 T-SQL은 DDL, DML 등 기본적인 SQL 구문뿐만 아니라 사용자가 원하는 결과를 만들 수 있도록 변수, 조건문, 반복문 등 많은 기능을 제공합니다. 2. 변수 1. 변수 선언 - DECLARE 키워드를 사용하여 변수 선언을 명시합니다. - 변수명은 '@'로 시작합니다. - 변수명 뒤에는 변수의 데이터 형식을 선언해야 합니다. 다음은 변수 선언의 예시입니다. 위 소스는 이름이 @var1 이고 데이터형식은 INT인 변수를 선언하는 구문입니다. 2. 값 할당 - SET 키워드를 사용하여 변수에 값을 할당합니다. 다음은 변수 선언의 예시입니다. 1. 에서 선언했던 @var1 변수에 데이터 1을 할당하는 구문입니다. 3. 값 출력 - SELECT 혹은 PRINT 키워드로 값을 출..

Data/SQL Server 2020.10.21

Transact-SQL(T-SQL) #4 - 저장 프로시저

1. 저장 프로시저란? 저장 프로시저란 하나 이상의 T-SQL 문을 실행할 수 있는 단위입니다. 저장 프로시저는 사용자 정의 저장 프로시저, 임시 저장 프로시저, 시스템 저장 프로시저까지 3가지의 유형이 있습니다. 사용자 정의 프로시저는 사용자가 만들어 사용할 수 있는 저장 프로시저이고 임시 프로시저는 사용자 프로시저와 같으나, tempdb에 저장되어 프로시저의 사용이 끝나면 삭제되는 프로시저입니다. 시스템 프로시저는 SQL Server에서 기본적으로 저장된 프로시저로 사용자는 시스템 프로시저를 호출하여 데이터베이스를 관리 할 수 있습니다. 데이터베이스의 '프로그래밍기능> 저장 프로시저 > 시스템 저장 프로시저'에는 그림과 같이 이미 정의되어있는 프로시저의 목록을 확인할 수 있습니다. 더 자세한 시스템 ..

Data/SQL Server 2020.10.21

Transact-SQL(T-SQL) #3 - FILE TABLE

FILE TABLE은 SQL SERVER 2012 이상 버전에서 지원하는 기능입니다. FILE TABLE은 FILESTREAM을 기반으로 동작하는 기능이므로 이전에 블로깅 했던 "Transact-SQL(T-SQL) #2 - FILESTREAM"을 참고하셔서 FILESTREAM을 활성화해주시면 감사하겠습니다. 1. 많은 파일을 데이터베이스에 INSERT 하려면? SQL SERVER에서 제공하는 VARBINARY 데이터 형식을 사용하면 파일을 직접 데이터베이스에 저장할 수 있습니다. 하지만 서버 측에서 파일을 INSERT 하는 일이 빈번하게 일어나거나 한번에 많은 파일을 INSERT 한다면 매번 데이터베이스에 질의를 날리는 것이 번거로울 것입니다. SQL SERVER는 WIN API를 통하여 있는 파일을 데..

Data/SQL Server 2020.10.21

Transact-SQL(T-SQL) #2 - FILESTREAM

"Transact-SQL(T-SQL) #1"에서는 데이터 형식을 알아보았습니다. 데이터베이스를 설계할 때 대부분의 RDBMS에서 제공하는 데이터 형식인 VARCHAR, TEXT등 사용해도 되지만, T-SQL에서 지원하는 NCHAR, NVARCHAR, VARCHAR(MAX) 데이터 형식을 사용하여 데이터베이스의 성능을 향상하고 할 수 있습니다. 이번에는 T-SQL에서 지원하는 기능 중 하나인 FILESTREAM에 대해 블로깅 하려고 합니다. 1. 데이터베이스와 파일을 따로 관리하는 방법 웹에서 사용하는 게시판을 직접 구현하는 데 필요한 데이터 타입은 어떤 것이 있을까요? 게시판의 글쓰기 화면입니다. 크게 제목, 본문내용, 첨부 파일로 구성되어있습니다. 제목과 본문내용은 텍스트이므로 VARCHAR 데이터 형..

Data/SQL Server 2020.10.21

Transact-SQL(T-SQL) #1 - 데이터 형식

1. Transact-SQL이란? Transact-SQL(T-SQL)은 Microsoft SQL Server에서 사용하는 Language입니다. T-SQL의 기본적인 문법은 ISO와 ANSI에서 제정한 SQL 표준과 같습니다. 년도 명칭 별칭 설명 1986 SQL-86 SQL-87 ANSI에 의한 최초의 표준화. 1989 SQL-89 FIPS127-1 마이너 개정, integrity constraints가 추가. FIPS 127-1에서 채택. 1992 SQL-92 SQL2, FIPS 127-2 매이저 개정 (ISO 9075), Entry Level SQL-92은 FIPS 127-2로 채택. 1999 SQL:1999 SQL3 정규 표현식 매칭 추가, 재귀 쿼리 (예, 이행적 폐쇄), 데이터베이스 트리거, ..

Data/SQL Server 2020.10.21