SQL Server에서 각 열, 지역 변수, 식 및 매개 변수는 관련된 데이터 타입(data type)을 가집니다. 데이터 타입은 개체가 보유할 수 있는 정수데이터, 문자 데이터, 통화 데이터, 날짜 및 시간 데이터, 이진 문자열 등의 데이터 형식을 지정하는 특성입니다.
데이터 종류 형식
- 정수
- BIGINT : 8 Byte
- INT : 4 Byte
- SMALLINT : 2 Byte
- TINYINT : 1 Byte
- 정확한 수치
- NUMBERIC : 전체 자릿수와 숫자 자릿수가 고정된 숫자 데이터 형식
- DECIMAL : 전체 자릿수와 숫자 자릿수가 고정된 숫자 데이터 형식
(NUMBERIC, DECIMAL 동의어 이며 서로 대체해서 사용가능)
- BIT : 1,0 또는 NULL 값을 가질 수 있는 정수 데이터 형식
- MONEY & SMALLMONEY : 통화 또는 통화 값을 나타내는 데이터 형식
MONEY 및 SMALLMONEY 데이터 형식은 나타내는 통화 단위의 1/10000 까지 정확합니다. INFORMATIC의 경우 MONEY 및
SMALLMONEY 데이터 형식은 나타내는 통화 단위의 1//100까지 정확
- 근사치
- FLOAT & REAL : 부동 소수점 숫자 데이터에 사용하는 근사 숫자 데이터 형식입니다. 부동 소수점 데이터는 근사값이므로 해당 데이터 형식 범위 에 있는 모든 값을 정확하게 표현할 수는 없습니다. REAL의 ISO 동의어
는 FLOAT(24)입니다.
- 날짜 및 시간
- DATE : SQL Server에서 날짜를 정의
- DATETIME2 : 24시간제 기준의 시간과 결합된 날짜를 정의. DATETIME2 는 더 큰 날짜 범위, 더 많은 기본 소수 자릭수, 선택 항목인 사용자 지정 전체 자릿수를 갖는 기존 DATETIME 형식의 확장으로 볼 수 있음
- DATETIME : 소수 자릿수 초가 있는 24시간제 기준의 시간과 결합된 날짜를 정의
- DATETIMEOFFSET : 표준 시간대를 인식하며 24시간제를 기준으로 한느 시간과 결합된 날자를 정의함
- SMALLDATETIME : 날짜와 시간을 정의합니다. 시간은 하루 24시간을 기준으로 하며 초는 항상 소수 자릿수 없이 0(:00)으로 표시됩니다.
- TIME : 시간을 정의합니다. 시간은 표준 시간대를 인식하지 않으며 24시간제 기준
- 문자열
- CHAR : 고정크기 문자열 데이터 형식. UTF-8 문자 인코딩을 사용.
- VARCHAR : 가변 크기 문자열 데이터 형식. UTF-8 문자 인코딩을 사용.
- TEXT : 최대 문자열 길이가 2^31-1(2,147,483,647)인 비유니코드 가변 길이 데이터 입니다.
- 유니코드 문자열
- NCHAR : 고정 크기 유니코드 문자열 데이터 형식. UTF-16 문자 인코딩 사용.
- NVARCHAR : 가변 크기 유니코듬 문자열 데이터 형식. UTF-16 문자 인코딩 사용.
- NTEXT : 최대 문자열 길이가 2^30 -1(1,073,741,823)바이트인 가변 길이 유니코드 데이터입니다.
- 이진 문자열
- BINARY : 고정 길이의 이진 데이터 형식
- VARBINARY : 가변 길이의 이진 데이터 형식
- IMAGE : 0에서 2^31-1(2,147,483,647)바이트의 가변 길이 이진 데이터 입니다.
- 기타 데이터 형식
- CURSOR : 커서에 대한 참조가 들어 있는 변수 또는 저장 프로시저 OUTPUT 매개 변수의 데이터 형식입니다.
- ROWVERSION : 데이터베이스 내에서 자동으로 생성된 고유 이진 숫자를 표시하는 데이터 형식
- HIERARCHYID : 가변길이의 시스템 데이터 형식. HIERARCHYID는 계층에서의 위치를 나타내는데 사용됩니다.
- UNIQUEIDENTIFIFR : 16바이트 GUID
- SQL_VARIANT : SQL Server 에서 지원하는 여러가지 데이터 형식의 값을 저장하는 데이터 형식
- XML : XML데이터를 저장하는 데이터 형식. xml형식의 변수 또는 열에 xml인스턴스 저장