Datatypes

Index

Data Type Table

Type NameDescriptionValue RangeNULL Value
short16비트 부호 있는 정수 데이터 타입-32767 ~ 32767-32768
ushort16비트 부호 없는 정수 데이터 타입0 ~ 6553465535
integer32비트 부호 있는 정수 데이터 타입-2147483647 ~ 2147483647-2147483648
uinteger32비트 부호 없는 정수 데이터 타입0 ~ 42949672944294967295
long64비트 부호 있는 정수 데이터 타입-9223372036854775807 ~ 9223372036854775807-9223372036854775808
ulong64비트 부호 없는 정수 데이터 타입0~1844674407370955161418446744073709551615
float32비트 부동 소수점 데이터 타입--
double64비트 부동 소수점 데이터 타입--
datetime시간 및 날짜1970-01-01 00:00:00 000:000:000 ~ 2262-04-11 23:47:16.854:775:807-
varchar가변 길이 문자열 (UTF-8)Length : 1 ~ 32768 (32K)-
ipv4버전 4 인터넷 주소 타입 (4 바이트)“0.0.0.0” ~ “255.255.255.255”-
ipv6버전 6 인터넷 주소 타입 (16 바이트)“0000:0000:0000:0000:0000:0000:0000:0000” ~ “FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF”-
text텍스트 데이터 타입 (키워드 인덱스 생성 가능)Length : 0 ~ 64M-
binary바이너리 데이터 타입 (인덱스 생성 불가)Length: 0 ~ 64M-
jsonjson 데이터 타입json data length : 1 ~ 32768 (32K)

json path length : 1 ~ 512
-

short

C 언어의 16비트 부호 있는 정수 데이터와 동일합니다. 최소 음수 값의 경우 NULL로 인식됩니다. “int16"으로 표시될 수 있습니다.

integer

C 언어의 32비트 부호 있는 정수 데이터와 동일합니다. 최소 음수 값의 경우 NULL로 인식됩니다. “int32” 또는 “int"로 표시될 수 있습니다.

long

C 언어의 64비트 부호 있는 정수 데이터와 동일합니다. 최소 음수 값의 경우 NULL로 인식됩니다. “int64"로 표시될 수 있습니다.

float

C 언어의 32비트 부동 소수점 데이터 타입 float와 동일합니다. 양수 최대값의 경우 NULL로 인식됩니다.

double

C 언어의 64비트 부동 소수점 데이터 타입 double과 동일합니다. 양수 최대값의 경우 NULL로 인식됩니다.

datetime

Machbase에서 이 타입은 1970년 1월 1일 자정 이후 경과된 시간의 나노초 값을 유지합니다.

따라서 Machbase는 모든 datetime 타입 관련 함수에서 나노초 단위까지 값을 처리하는 기능을 제공합니다.

varchar

가변 길이 문자열 데이터 타입이며 최대 32K 바이트까지 생성할 수 있습니다.

이 길이 기준은 영문 한 문자 기준이므로 UTF-8에서 출력할 실제 문자 수와는 다르며 적절한 길이로 설정해야 합니다.

IPv4

Internet Protocol 버전 4에서 사용하는 주소를 저장할 수 있는 타입입니다.

내부적으로 4바이트를 사용하여 표현되며 “0.0.0.0"부터 “255.255.255.255"까지 표현할 수 있습니다.

IPv6

Internet Protocol 버전 6에서 사용하는 주소를 저장할 수 있는 타입입니다.

내부적으로 16바이트가 표현되며 “0000:0000:0000:0000:0000:0000:0000:0000"부터 “FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF"까지 표현할 수 있습니다. 데이터 입력 시 축약 타입도 지원하므로 다음과 같이 : 기호를 사용하여 표현할 수 있습니다.

  • “::FFFF:1232”: 모든 선행 0
  • “::FFFF:192.168.0.3”: IPv4 타입 호환성 지원
  • “::192.168.3.1”: 더 이상 사용되지 않는 IPv4 타입 호환성 지원

text

VARCHAR 크기를 초과하는 텍스트나 문서를 저장하기 위한 데이터 타입입니다.

이 데이터 타입은 키워드 인덱스를 통해 검색할 수 있으며 최대 64메가바이트의 텍스트를 저장할 수 있습니다. 이 타입은 주로 대용량 텍스트 파일을 별도 컬럼으로 저장하고 검색하는 데 사용됩니다.

binary

컬럼에 비정형 데이터를 저장하기 위해 지원되는 타입입니다.

이미지, 비디오 또는 오디오와 같은 바이너리 데이터를 저장하는 데 사용됩니다. 이 타입에 대해서는 인덱스를 생성할 수 없습니다. 저장을 위한 최대 데이터 크기는 TEXT 타입과 동일한 최대 64메가바이트입니다.

json

json 데이터를 저장하기 위한 데이터 타입입니다.

Json은 “Key-Value” 쌍으로 구성된 데이터 객체를 텍스트 형식으로 저장하는 포맷입니다.

데이터의 최대 크기는 varchar 타입과 동일한 32K 바이트입니다.

SQL Datatype Table

다음 표는 Machbase 데이터 타입에 해당하는 SQL 데이터 타입과 C 데이터 타입을 보여줍니다.

Machbase DatatypeMachbase CLI DatatypeSQL DatatypeC DatatypeBasic types for CDescription
shortSQL_SMALLINTSQL_SMALLINTSQL_C_SSHORTint16_t (short)16비트 부호 있는 정수 데이터 타입
ushortSQL_USMALLINTSQL_SMALLINTSQL_C_USHORTuint16_t (unsigned short)16비트 부호 없는 정수 데이터 타입
integerSQL_INTEGERSQL_INTEGERSQL_C_SLONGint32_t (int)32비트 부호 있는 정수 데이터 타입
uintegerSQL_UINTEGERSQL_INTEGERSQL_C_ULONGuint32_t (unsigned int)32비트 부호 없는 정수 데이터 타입
longSQL_BIGINTSQL_BIGINTSQL_C_SBIGINTint64_t (long long)64비트 부호 있는 정수 데이터 타입
ulongSQL_UBIGINTSQL_BIGINTSQL_C_UBIGINTuint64_t (unsigned long long)64비트 부호 없는 정수 데이터 타입
floatSQL_FLOATSQL_REALSQL_C_FLOATfloat32비트 부동 소수점 데이터 타입
doubleSQL_DOUBLESQL_FLOAT, SQL_DOUBLESQL_C_DOUBLEdouble64비트 부동 소수점 데이터 타입
datetimeSQL_TIMESTAMP

SQL_TIME
SQL_TYPE_TIMESTAMP

SQL_BIGINT

SQL_TYPE_TIME
SQL_C_TYPE_TIMESTAMP

SQL_C_UBIGINT

SQL_C_TIME
char * (YYYY-MM-DD HH24:MI:SS)

int64_t (timestamp: nano seconds)
struct tm
시간 및 날짜
varcharSQL_VARCHARSQL_VARCHARSQL_C_CHARchar *문자열
ipv4SQL_IPV4SQL_VARCHARSQL_C_CHARchar * (ip 문자열 입력)

unsigned char[4]
버전 4 인터넷 주소 타입
ipv6SQL_IPV6SQL_VARCHARSQL_C_CHARchar * (ip 문자열 입력)

unsigned char[16]
버전 6 인터넷 주소 타입
textSQL_TEXTSQL_LONGVARCHARSQL_C_CHARchar *텍스트
binarySQL_BINARYSQL_BINARYSQL_C_BINARYchar *바이너리 데이터
jsonSQL_JSONSQL_JSONSQL_C_CHARjson_tjson 데이터 타입
최근 업데이트