제1장 데이터 타입의 사용

내용 목차

1.1. 개요
1.1.1. 문자형
1.1.2. 숫자형
1.1.3. 날짜형
1.1.4. 간격형
1.1.5. 바이너리
1.1.6. 내재형

본 장에서는 각종 애플리케이션 라이브러리를 사용하기 앞서 Tibero가 기본적으로 제공하는 데이터 타입을 소개하고 사용하는 방법을 설명한다.

데이터 타입은 데이터베이스에 스키마 객체를 생성할 때 필요하며, 일반적인 클라이언트 프로그램에서도 모든 데이터 타입에 대응되는 변수를 사용할 수 있다.

Tibero에서 제공하는 데이터 타입은 다음과 같다.

구분데이터 타입설명
문자형CHAR, VARCHAR, VARCHAR2, NCHAR, NVARCHAR, CLOB, NCLOB, LONG, XMLTYPE문자열을 표현하는 데이터 타입이다.
숫자형NUMBER, BINARY_FLOAT, BINARY_DOUBLE정수나 실수의 숫자를 저장하는 데이터 타입이다.
날짜형

DATE, TIME, TIMESTAMP,

TIMESTAMP WITH TIME ZONE,

TIMESTAMP WITH LOCAL TIME ZONE

시간이나 날짜를 저장하는 데이터 타입이다.
간격형

INTERVAL YEAR TO MONTH,

INTERVAL DAY TO SECOND

시간 간격을 저장하는 데이터 타입이다.
바이너리RAW, BLOB, LONG RAW바이너리 데이터를 저장하는 데이터 타입이다.
내재형ROWID사용자가 명시적으로 선언하지 않아도 Tibero가 자동으로 삽입되는 로우마다 포함하는 컬럼의 타입이다.

참고

데이터 타입에 대한 자세한 내용은 "Tibero SQL 참조 안내서"를 참고한다.

본 절에서는 각 데이터 타입을 사용하는 방법을 설명한다.

CHAR

CHAR 타입은 일반 문자열을 저장하는 데이터 타입으로, 고정 길이 문자열이다.

사용 방법은 다음과 같다.

CHAR[(size[BYTE|CHAR])]
옵션설명
size

size는 선택적으로 사용할 수 있다. (최댓값: 2,000Byte)

  • size를 입력한 경우: size만큼의 고정 길이를 갖는다.

  • size를 입력하지 않은 경우: 기본값인 1byte의 고정 길이를 갖는다.

VARCHAR, VARCHAR2

VARCHAR 또는 VARCHAR2 타입은 일반 문자열을 저장하는 데이터 타입으로, 가변 길이 문자열이다.

사용 방법은 다음과 같다.

VARCHAR(size[BYTE|CHAR])
VARCHAR2(size[BYTE|CHAR])
항목설명
sizesize에 정의된 만큼의 길이를 갖는다. (최댓값: 65,532bytes)

NCHAR

NCHAR 타입은 다국어 문자집합을 사용하는 문자열을 저장하는 데이터 타입으로, 고정 길이 문자열이다.

사용 방법은 다음과 같다.

NCHAR(size)
항목설명
sizesize에 정의된 만큼의 고정 길이를 갖는다. (최댓값: 2,000bytes)

NVARCHAR

NVARCHAR 타입은 다국어 문자집합을 사용하는 문자열을 저장하는 데이터 타입으로, 가변 길이 문자열이다.

사용 방법은 다음과 같다.

NVARCHAR(size)
항목설명
sizesize에 정의된 만큼의 길이를 갖는다. (최댓값: 65,532bytes)

CLOB

CLOB 타입은 읽을 수 있는 문자열을 데이터베이스에 저장하는 데이터 타입으로, 대용량 데이터를 저장한다.

사용 방법은 다음과 같다.

CLOB

대용량 데이터는 4GB까지 저장할 수 있다.

NCLOB

NCLOB 타입은 읽을 수 있는 National Characterset 문자열을 데이터베이스에 저장하는 데이터 타입으로, 대용량 데이터를 저장한다.

사용 방법은 다음과 같다.

NCLOB

대용량 데이터는 4GB까지 저장할 수 있다.

LONG

LONG 타입은 대용량 데이터를 저장하기 위한 데이터 타입이다. 단, Oracle과의 호환성을 위해서만 사용한다. 그 외에는 CLOB 타입을 사용할 것을 권장한다.

사용 방법은 다음과 같다.

LONG

DATE

DATE 타입은 년, 월, 일의 날짜를 저장하는 데이터 타입이다. 실제로 데이터베이스에 저장될 때는 고정 길이로 저장된다.

사용 방법은 다음과 같다.

DATE

TIME

TIME 타입은 시, 분, 초의 시간을 저장하는 데이터 타입이다. 실제로 데이터베이스에 저장될 때는 고정 길이로 저장된다.

사용 방법은 다음과 같다.

TIME

TIMESTAMP

TIMESTAMP 타입은 DATE 타입을 확장한 것으로 시간까지 저장하는 데이터 타입이다. 실제로 데이터베이스에 저장될 때는 고정 길이로 저장된다.

사용 방법은 다음과 같다.

TIMESTAMP[(fractional_seconds_precision)]
옵션설명
fractional_seconds_precision

소수점 초 단위 정밀도를 설정한다.

  • 0부터 9까지 사용할 수 있다. (기본값: 6)

TIMESTAMP WITH TIME ZONE

TIMESTAMP WITH TIME ZONE 타입은 TIMESTAMP 타입을 확장한 것으로 주어진 시간을 UTC 시간대로 변경하고, 시간대 정보까지 저장하는 데이터 타입이다. 실제로 데이터베이스에 저장될 때는 고정 길이로 저장된다.

사용 방법은 다음과 같다.

TIMESTAMP[(fractional_seconds_precision)] WITH TIME ZONE
옵션설명
fractional_seconds_precision

소수점 초 단위 정밀도를 설정한다.

  • 0부터 9까지 사용할 수 있다. (기본값: 6)

TIMESTAMP WITH LOCAL TIME ZONE

TIMESTAMP WITH LOCAL TIME ZONE 타입은 TIMESTAMP WITH TIME ZONE 타입과 마찬가지로 UTC 시간대로 바꾸기는 하지만, 시간대 정보는 저장하지 않는 데이터 타입이다. 실제로 데이터베이스에 저장될 때는 고정 길이로 저장되고, TIMESTAMP 타입과 같은 길이를 가진다.

사용 방법은 다음과 같다.

TIMESTAMP[(fractional_seconds_precision)] WITH LOCAL TIME ZONE
옵션설명
fractional_seconds_precision

소수점 초 단위 정밀도를 설정한다.

  • 0부터 9까지 사용할 수 있다. (기본값: 6)