Oracle 19c Data Types
오라클 데이터베이스 19c 데이터 타입
- 본 포스트에서는 오라클 데이터베이스 19c 버전에서 제공하는 데이터 타입들에 대해 알아본다.
* Notation
Oracle Built-In Data Types (오라클 기본 데이터 타입)
* 데이터 타입별 Code는 오라클 데이터베이스 내부적으로 타입을 식별하기 위해 사용된다.
Code |
Data Type | Description |
1 | VARCHAR2(size [BYTE | CHAR]) | Variable-length character string having maximum length size bytes or characters. You must specify size for VARCHAR2. Minimum size is 1 byte or 1 character. Maximum size is:
BYTE indicates that the column will have byte length semantics. CHAR indicates that the column will have character semantics. |
1 | NVARCHAR2(size) | Variable-length Unicode character string having maximum length size characters. You must specify size for NVARCHAR2. The number of bytes can be up to two times size for AL16UTF16 encoding and three times size for UTF8 encoding. Maximum size is determined by the national character set definition, with an upper limit of:
|
2 | NUMBER [ (p [, s]) ] | Number having precision p and scale s. The precision p can range from 1 to 38. The scale s can range from -84 to 127. Both precision and scale are in decimal digits. A NUMBER value requires from 1 to 22 bytes. |
2 | FLOAT [ (p) ] | A subtype of the NUMBER data type having precision p. A FLOAT value is represented internally as NUMBER. The precision p can range from 1 to 126 binary digits. A FLOAT value requires from 1 to 22 bytes. |
8 | LONG | Character data of variable length up to 2 gigabytes, or 231 -1 bytes. Provided for backward compatibility. |
12 | DATE | Valid date range from January 1, 4712 BC, to December 31, 9999 AD. The default format is determined explicitly by the NLS_DATE_FORMAT parameter or implicitly by the NLS_TERRITORY parameter. The size is fixed at 7 bytes. This data type contains the datetime fields YEAR, MONTH, DAY, HOUR, MINUTE, and SECOND. It does not have fractional seconds or a time zone. |
100 | BINARY_FLOAT | 32-bit floating point number. This data type requires 4 bytes. |
101 | BINARY_DOUBLE | 64-bit floating point number. This data type requires 8 bytes. |
180 | TIMESTAMP [(fractional_seconds_precision)] | Year, month, and day values of date, as well as hour, minute, and second values of time, where fractional_seconds_precision is the number of digits in the fractional part of the SECOND datetime field. Accepted values of fractional_seconds_precision are 0 to 9. The default is 6. The default format is determined explicitly by the NLS_TIMESTAMP_FORMAT parameter or implicitly by the NLS_TERRITORY parameter. The size is 7 or 11 bytes, depending on the precision. This data type contains the datetime fields YEAR, MONTH, DAY, HOUR, MINUTE, and SECOND. It contains fractional seconds but does not have a time zone. |
181 | TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE | All values of TIMESTAMP as well as time zone displacement value, where fractional_seconds_precision is the number of digits in the fractional part of the SECOND datetime field. Accepted values are 0 to 9. The default is 6. The default date format for the TIMESTAMP WITH TIME ZONE data type is determined by the NLS_TIMESTAMP_TZ_FORMAT initialization parameter. The size is fixed at 13 bytes. This data type contains the datetime fields YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, TIMEZONE_HOUR, and TIMEZONE_MINUTE. It has fractional seconds and an explicit time zone. |
231 | TIMESTAMP [(fractional_seconds_precision)] WITH LOCAL TIME ZONE |
All values of TIMESTAMP WITH TIME ZONE, with the following exceptions:
|
182 | INTERVAL YEAR [(year_precision)] TO MONTH |
Stores a period of time in years and months, where year_precision is the number of digits in the YEAR datetime field. Accepted values are 0 to 9. The default is 2. The size is fixed at 5 bytes. |
183 | INTERVAL DAY [(day_precision)] TO SECOND [(fractional_seconds_precision)] | Stores a period of time in days, hours, minutes, and seconds, where
|
23 | RAW(size) | Raw binary data of length size bytes. You must specify size for a RAW value. Maximum size is:
|
24 | LONG RAW | Raw binary data of variable length up to 2 gigabytes. |
69 | ROWID | Base 64 string representing the unique address of a row in its table. This data type is primarily for values returned by the ROWID pseudocolumn. |
208 | UROWID [(size)] | Base 64 string representing the logical address of a row of an index-organized table. The optional size is the size of a column of type UROWID. The maximum size and default is 4000 bytes. |
96 | CHAR [(size [BYTE | CHAR])] | Fixed-length character data of length size bytes or characters. Maximum size is 2000 bytes or characters. Default and minimum size is 1 byte. BYTE and CHAR have the same semantics as for VARCHAR2. |
96 | NCHAR[(size)] | Fixed-length character data of length size characters. The number of bytes can be up to two times size for AL16UTF16 encoding and three times size for UTF8 encoding. Maximum size is determined by the national character set definition, with an upper limit of 2000 bytes. Default and minimum size is 1 character. |
112 | CLOB | A character large object containing single-byte or multibyte characters. Both fixed-width and variable-width character sets are supported, both using the database character set. Maximum size is (4 gigabytes - 1) * (database block size). |
112 | NCLOB | A character large object containing Unicode characters. Both fixed-width and variable-width character sets are supported, both using the database national character set. Maximum size is (4 gigabytes - 1) * (database block size). Stores national character set data. |
113 | BLOB | A binary large object. Maximum size is (4 gigabytes - 1) * (database block size). |
114 | BFILE | Contains a locator to a large binary file stored outside the database. Enables byte stream I/O access to external LOBs residing on the database server. Maximum size is 4 gigabytes. |
Reference: Oracle, SQL Language Reference, URL, 2023년 3월 20일 검색