System-Supplied Datatypes

You can use either a system datatype or user-defined datatype when declaring a column, local variable, or parameter.

The system datatypes are printed in lowercase characters, although SAP ASE allows you to enter them in either uppercase or lowercase. Most SAP ASE-supplied datatypes are not reserved words and can be used to name other objects. To build user-defined datatypes that are based on the system datatypes, use sp_addtype.

This table shows the SAP ASE system-supplied datatypes:

Datatypes by Category

Synonyms

Range

Bytes of Storage

Exact numeric: integers

bigint

Whole numbers between 263 and -263 - 1 (from -9,223,372,036,854,775,808 to +9,223,372,036,854,775,807, inclusive

8

int

integer

231 -1 (2,147,483,647) to -231 (-2,147,483,648)

4

smallint

215 -1 (32,767) to -215 (-32,768)

2

tinyint

0 to 255 (negative numbers are not permitted)

1

unsigned bigint

Whole numbers between 0 and 18,446,744,073,709,551,615

8

unsigned int

Whole numbers between 0 and 4,294,967,295

4

unsigned smallint

Whole numbers between 0 and 65535

2

Exact numeric: decimals

numeric (precision, scale)

1038 -1 to -1038

2 to 17

decimal (precision, scale)

dec

1038 -1 to -1038

2 to 17

Approximate numeric

float (precision)

Machine-dependent

4 for default precision < 16, 8 for default precision >= 16

double precision

Machine-dependent

8

real

Machine-dependent

4

Money

smallmoney

214,748.3647 to -214,748.3648

4

money

922,337,203,685,477.5807 to -922,337,203,685,477.5808

8

Date/time

smalldatetime

January 1, 1900 to June 6, 2079

4

datetime

January 1, 1753 to December 31, 9999

8

date

January 1, 0001 to December 31, 9999

4

time

12:00:00 a.m to 11:59:59:999 p.m.

4

bigdatetime

January 1, 0001 to December 31, 9999 and 12:00:00.000000 a.m. to 11:59:59.999999 p.m.

8

bigtime

12:00:00.000000 a.m 11:59:59.999999 p.m.

8

Character

char(n)

character

page size

n

varchar(n)

character varying, char varying

page size

Actual entry length

unichar

Unicode character

page size

n * @@unicharsize (@@unicharsize equals 2)

univarchar

Unicode character varying, char varying

page size

actual number of characters * @@unicharsize

nchar(n)

national character, national char

page size

n * @@ncharsize

nvarchar(n)

nchar varying, national char varying, national character varying

page size

@@ncharsize * number of characters

text

231 -1 (2,147,483,647) bytes or fewer

0 when uninitialized; multiple of 2K after initialization

unitext

1,073,741,823 Unicode characters or fewer

0 when uninitialized; multiple of 2K after initialization

Binary

binary(n)

pagesize

n

varbinary(n)

pagesize

actual entry length

image

231 -1 (2,147,483,647) bytes or fewer

0 when uninitialized; multiple of 2K after initialization

Bit   

bit

0 or 1

1 (one byte holds up to 8 bit columns)