CLI 지원 데이터 타입
티베로 DB CLI에서 제공하는 데이터 타입을 소개합니다. tbCLI 데이터 타입은 데이터베이스 프로그램을 작성할 때 활용가능합니다.
tbCLI 지원 데이터 타입
Tibero의 데이터 타입 데이터베이스에 저장된 데이터에 접근할 때 사용합니다.
tbCLI의 데이터 타입 애플리케이션 프로그램에서 데이터를 조작할 때 사용합니다.
Tibero 데이터 타입
본 절에서는 Tibero에서 디폴트로 제공하는 데이터 타입을 간략히 설명합니다. 이러한 데이터 타입은 데이터베이스의 스키마 객체를 생성하는데 사용하는 것으로 tbESQL 프로그램 내에서도 모든 데이터 타입에 대응되는 변수를 사용할 수 있습니다.
Tibero 데이터 타입
문자형
CHAR, VARCHAR, NCHAR, NVARCHAR, RAW, LONG, LONG RAW
문자열이나 바이너리 데이터를 저장하는 데이터 타입
LONG, LONG RAW의 경우 2GB까지 저장
숫자형
NUMBER, INTEGER, FLOAT, BINARY_FLOAT, BINARY_DOUBLE
정수나 실수의 숫자를 저장하는 데이터 타입
날짜형
DATE, TIME, TIMESTAMP, TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH
LOCAL TIMEZONE
시간이나 날짜, 시간대를 저장하는 데이터 타입
간격형
INTERVAL YEAR TO MONTH, INTERVAL DAY TOSECOND
시간사이의 간격을 저장하는 데이터 타입
대용량 객체형
CLOB, BLOB
LOB 타입
다른 데이터 타입이 지원하는 최대 길이(8KB 이하)보다 훨씬 큰 길이를 가질 수 있는 객체로, 4GB까지 가능
내재형
ROWID
사용자가 명시적으로 선언하지 않아도 Tibero가 자동으로 삽입되는 로우마다 포함하는 컬럼 타입
아래는 각 데이터 타입에 대한 세부 설명입니다.
CHAR
VARCHAR
일반 문자열을 저장하는 데이터 타입
NCHAR
NVARCHAR
유니코드 문자열을 저장하는 데이터 타입
RAW
바이너리 데이터를 저장하는 데이터 타입
LONG
LONG RAW
대용량의 문자열이나 바이너리 데이터를 저장하는 데이터 타입
한 테이블 내에 하나의 컬럼만 선언 가능
NUMBER INTEGER FLOAT
정수 또는 실수를 저장하는 타입
NUMBER 타입을 선언할 때 정밀도와 스케일을 함께 선언가능
정밀도 : 데이터 값의 전체 자릿수
스케일 : 소수점 이하 자릿수
BINARY_FLOAT BINARY_DOUBLE
정수 또는 실수를 저장하는 타입
BINARY_FLOAT : 32bit 부동 소수점 타입
BINARY_DOUBLE : 64bit 부동 소수점 타입
DATE TIME
TIMESTAMP
TIMESTAMP WITH TIME ZONE
TIMESTAMP WITH LOCAL TIME ZONE
특정 날짜와 시간, 시간대를 나타내는 데이터 타입
DATE : 특정 날짜
TIMESTAMP : 특정 날짜와 시간
TIMESTAMP WITH TIME ZONE : UTC(Coordinated Universal Time)으로 정규화된 특정 날짜와 시간, 해당 시간대
TIMESTAMP WITH LOCAL TIME ZOEN : UTC(CoordinatedUniversal Time)으로 정규화된 특정 날짜와 시간
INTERVAL YEAR TO MONTH INTERVAL DAY TO SECOND
특정 날짜와 시간 사이의 간격을 나타내는 데이터 타입
INTERVAL YEAR TO MONTH : 연도와 월로 계산한 시간 간격
INTERVAL DAY TO SECOND : 일, 시, 분, 초, 소수점 초로 계산한 시간 간격
CLOB BLOB
대용량의 문자열이나 바이너리 데이터를 저장하는 데이터 타입
한 테이블 내에 여러 컬럼을 선언 가능
ROWID
데이터베이스 내의 각 로우를 식별하기 위해 Tibero 시스템이 각 로우마다 자동으로 부여하는 데이터 타입
각 로우가 저장되어 있는 물리적인 위치를 포함
tbCLI 데이터 타입
본 절에서는 애플리케이션 프로그램 개발자가 데이터베이스 프로그램을 작성할 때 사용하게 되는 tbCLI의 데이터 타입을 설명합니다.
아래는 각 데이터 타입에 대한 C의 typedef 이름과 이에 대응하는 C의 데이터 타입을 보여주는 표입니다.
SQLCHAR
unsigned char
SQLSCHAR
signed char
SQLSMALLINT
short int
SQLUSMALLINT
unsigned short int
SQLINTEGER
long int
SQLUINTEGER
unsigned long int
SQLREAL
float
SQLDOUBLE, SQLFLOAT
double
DATE_STRUCT, SQL_DATE_STRUCT
TIME_STRUCT, SQL_TIME_STRUCT
TIME_STAMP_STRUCT, SQL_TIMESTAMP_STRUCT
아래는 C의 typedef 이름에 대응하는 tbCLI의 데이터 타입을 사용한 예입니다.
DATE_STRUCT, SQL_DATE_STRUCT
[예 5] DATE_STRUCT, SQL_DATE_STRUCT
typedef struct tagDATE_STRUCT
{
SQLSMALLINT year;
SQLUSMALLINT month;
SQLUSMALLINT day;
};
TIME_STRUCT, SQL_TIME_STRUCT
[예 6] TIME_STRUCT, SQL_TIME_STRUCT
struct tagTIME_STRUCT
{
SQLUSMALLINT hour;
SQLUSMALLINT minute;
SQLUSMALLINT second;
};
TIME_STAMP_STRUCT, SQL_TIMESTAMP_STRUCT
[예 7] TIME_STAMP_STRUCT, SQL_TIMESTAMP_STRUCT
struct tagTIMESTAMP_STRUCT
{
SQLSMALLINT year;
SQLUSMALLINT month;
SQLUSMALLINT day;
SQLUSMALLINT hour;
SQLUSMALLINT minute;
SQLUSMALLINT second;
SQLUINTEGER fraction;
};
Last updated