From Eigenpedia
Syntax
data-type ::=
{ character-type | binary-type } [ ( length ) ] [ CHARACTER SET charset-name ]
| decimal-type [ ( precision [ , scale ] ) ]
| integer-type
| approximate-type
| BOOLEAN
| DATE
| TIME
| TIMESTAMP
character-type ::=
{ CHARACTER | CHAR } [ VARYING ]
| VARCHAR
binary-type ::=
BINARY [ VARYING ]
| VARBINARY
integer-type ::=
TINYINT
| SMALLINT
| INT | INTEGER
| BIGINT
decimal-type ::=
DECIMAL | DEC | NUMERIC
approximate-type ::=
REAL
| FLOAT
| DOUBLE [ PRECISION ]
Notes
- If unspecified, character length defaults to 1
- Maximum character length is 65535 (actual maximum for stored rows is smaller due to default 32K page size)
- If unspecified, numeric precision defaults to 19; scale defaults to 0
- Maximum numeric precision/scale is 19
- The only character set name currently supported is "ISO-8859-1"
- TIME and TIMESTAMP do not support fractional seconds
- REAL corresponds to a 32-bit IEEE float
- DOUBLE corresponds to a 64-bit IEEE double
- FLOAT is equivalent to DOUBLE PRECISION
- When precision is lost by a numeric operations, LucidDB always performs rounding rather than truncation