tech on the net
Home About Us Feedback Site Map

Microsoft

Access Excel Word

Database

SQL Oracle / PLSQL SQL Server MySQL MariaDB PostgreSQL

Web Development

HTML CSS Color Picker

Language

C Language

More

ASCII Table Linux UNIX Java Clipart Joke of the Moment

Other Sites

CheckYourMath BigActivities DigMinecraft
Share this page:

Oracle/PLSQL: Data Types

The following is a list of datatypes available in Oracle/PLSQL, which includes character, numeric, date/time, LOB and rowid datatypes.

Character Datatypes

The following are the Character Datatypes in Oracle/PLSQL:

Data Type Syntax Oracle 9i Oracle 10g Oracle 11g Explanation
(if applicable)
char(size) Maximum size of 2000 bytes. Maximum size of 2000 bytes. Maximum size of 2000 bytes. Where size is the number of characters to store. Fixed-length strings. Space padded.
nchar(size) Maximum size of 2000 bytes. Maximum size of 2000 bytes. Maximum size of 2000 bytes. Where size is the number of characters to store. Fixed-length NLS string Space padded.
nvarchar2(size) Maximum size of 4000 bytes. Maximum size of 4000 bytes. Maximum size of 4000 bytes. Where size is the number of characters to store. Variable-length NLS string.
varchar2(size)

Maximum size of 4000 bytes.

Maximum size of 32KB in PLSQL.

Maximum size of 4000 bytes.

Maximum size of 32KB in PLSQL.

Maximum size of 4000 bytes.

Maximum size of 32KB in PLSQL.

Where size is the number of characters to store. Variable-length string.
long Maximum size of 2GB. Maximum size of 2GB. Maximum size of 2GB. Variable-length strings. (backward compatible)
raw Maximum size of 2000 bytes. Maximum size of 2000 bytes. Maximum size of 2000 bytes. Variable-length binary strings
long raw Maximum size of 2GB. Maximum size of 2GB. Maximum size of 2GB. Variable-length binary strings. (backward compatible)

Numeric Datatypes

The following are the Numeric Datatypes in Oracle/PLSQL:

Data Type Syntax Oracle 9i Oracle 10g Oracle 11g Explanation
(if applicable)
number(p,s) Precision can range from 1 to 38.
Scale can range from -84 to 127.
Precision can range from 1 to 38.
Scale can range from -84 to 127.
Precision can range from 1 to 38.
Scale can range from -84 to 127.

Where p is the precision and s is the scale.

For example, number(7,2) is a number that has 5 digits before the decimal and 2 digits after the decimal.

numeric(p,s) Precision can range from 1 to 38. Precision can range from 1 to 38. Precision can range from 1 to 38.

Where p is the precision and s is the scale.

For example, numeric(7,2) is a number that has 5 digits before the decimal and 2 digits after the decimal.

float        
dec(p,s) Precision can range from 1 to 38. Precision can range from 1 to 38. Precision can range from 1 to 38.

Where p is the precision and s is the scale.

For example, dec(3,1) is a number that has 2 digits before the decimal and 1 digit after the decimal.

decimal(p,s) Precision can range from 1 to 38. Precision can range from 1 to 38. Precision can range from 1 to 38.

Where p is the precision and s is the scale.

For example, decimal(3,1) is a number that has 2 digits before the decimal and 1 digit after the decimal.

integer        
int        
smallint        
real        
double precision        

Date/Time Datatypes

The following are the Date/Time Datatypes in Oracle/PLSQL:

Data Type Syntax Oracle 9i Oracle 10g Oracle 11g Explanation
(if applicable)
date A date between Jan 1, 4712 BC and Dec 31, 9999 AD. A date between Jan 1, 4712 BC and Dec 31, 9999 AD. A date between Jan 1, 4712 BC and Dec 31, 9999 AD.  
timestamp (fractional seconds precision) fractional seconds precision must be a number between 0 and 9. (default is 6) fractional seconds precision must be a number between 0 and 9. (default is 6) fractional seconds precision must be a number between 0 and 9. (default is 6)

Includes year, month, day, hour, minute, and seconds.

For example:
timestamp(6)

timestamp (fractional seconds precision) with time zone fractional seconds precision must be a number between 0 and 9. (default is 6) fractional seconds precision must be a number between 0 and 9. (default is 6) fractional seconds precision must be a number between 0 and 9. (default is 6)

Includes year, month, day, hour, minute, and seconds; with a time zone displacement value.

For example:
timestamp(5) with time zone

timestamp (fractional seconds precision) with local time zone fractional seconds precision must be a number between 0 and 9. (default is 6) fractional seconds precision must be a number between 0 and 9. (default is 6) fractional seconds precision must be a number between 0 and 9. (default is 6) Includes year, month, day, hour, minute, and seconds; with a time zone expressed as the session time zone.

For example:
timestamp(4) with local time zone

interval year
(year precision)
to month
year precision is the number of digits in the year. (default is 2) year precision is the number of digits in the year. (default is 2) year precision is the number of digits in the year. (default is 2)

Time period stored in years and months.

For example:
interval year(4) to month

interval day
(day precision)
to second (fractional seconds precision)

day precision must be a number between 0 and 9. (default is 2)

fractional seconds precision must be a number between 0 and 9. (default is 6)

day precision must be a number between 0 and 9. (default is 2)

fractional seconds precision must be a number between 0 and 9. (default is 6)

day precision must be a number between 0 and 9. (default is 2)

fractional seconds precision must be a number between 0 and 9. (default is 6)

Time period stored in days, hours, minutes, and seconds.

For example:
interval day(2) to second(6)

Large Object (LOB) Datatypes

The following are the LOB Datatypes in Oracle/PLSQL:

Data Type Syntax Oracle 9i Oracle 10g Oracle 11g Explanation
(if applicable)
bfile Maximum file size of 4GB. Maximum file size of 232-1 bytes. Maximum file size of 264-1 bytes. File locators that point to a binary file on the server file system (outside the database).
blob Store up to 4GB of binary data. Store up to (4 gigabytes -1) * (the value of the CHUNK parameter of LOB storage). Store up to (4 gigabytes -1) * (the value of the CHUNK parameter of LOB storage). Stores unstructured binary large objects.
clob Store up to 4GB of character data. Store up to (4 gigabytes -1) * (the value of the CHUNK parameter of LOB storage) of character data. Store up to (4 gigabytes -1) * (the value of the CHUNK parameter of LOB storage) of character data. Stores single-byte and multi-byte character data.
nclob Store up to 4GB of character text data. Store up to (4 gigabytes -1) * (the value of the CHUNK parameter of LOB storage) of character text data. Store up to (4 gigabytes -1) * (the value of the CHUNK parameter of LOB storage) of character text data. Stores unicode data.

Rowid Datatypes

The following are the Rowid Datatypes in Oracle/PLSQL:

Data Type Syntax Oracle 9i Oracle 10g Oracle 11g Explanation
(if applicable)
rowid

The format of the rowid is: BBBBBBB.RRRR.FFFFF

Where BBBBBBB is the block in the database file;
RRRR is the row in the block;
FFFFF is the database file.

The format of the rowid is: BBBBBBB.RRRR.FFFFF

Where BBBBBBB is the block in the database file;
RRRR is the row in the block;
FFFFF is the database file.

The format of the rowid is: BBBBBBB.RRRR.FFFFF

Where BBBBBBB is the block in the database file;
RRRR is the row in the block;
FFFFF is the database file.

Fixed-length binary data. Every record in the database has a physical address or rowid.
urowid(size)      

Universal rowid.

Where size is optional.