Data type assignments and comparison, sorting, and ordering

Table 1. Assignments allowed by Derby. This table displays valid assignments between data types in Derby. A "Y" indicates that the assignment is valid.
Types

S
M
A
L
L
I
N
T

I
N
T
E
G
E
R

B
I
G
I
N
T

D
E
C
I
M
A
L

R
E
A
L

D
O
U
B
L
E

F
L
O
A
T

C
H
A
R

V
A
R
C
H
A
R

L
O
N
G

V
A
R
C
H
A
R

C
H
A
R

F
O
R

B
I
T

D
A
T
A

V
A
R
C
H
A
R

F
O
R

B
I
T

D
A
T
A

L
O
N
G

V
A
R
C
H
A
R

F
O
R

B
I
T

D
A
T
A

C
L
O
B

B
L
O
B

D
A
T
E

T
I
M
E

T
I
M
E
S
T
A
M
P

X
M
L

SMALL INT Y Y Y Y Y Y Y - - - - - - - - - - - -
INTEGER Y Y Y Y Y Y Y - - - - - - - - - - - -
BIGINT Y Y Y Y Y Y Y - - - - - - - - - - - -
DECIMAL Y Y Y Y Y Y Y - - - - - - - - - - - -
REAL Y Y Y Y Y Y Y - - - - - - - - - - - -
DOUBLE Y Y Y Y Y Y Y - - - - - - - - - - - -
FLOAT Y Y Y Y Y Y Y - - - - - - - - - - - -
CHAR - - - - - - - Y Y Y - - - Y - Y Y Y -
VARCHAR - - - - - - - Y Y Y - - - Y - Y Y Y -
LONG VARCHAR - - - - - - - Y Y Y - - - Y - - - - -
CHAR FOR BIT DATA - - - - - - - - - - Y Y Y - - - - - -
VARCHAR FOR BIT DATA - - - - - - - - - - Y Y Y - - - - - -
LONG VARCHAR FOR BIT DATA - - - - - - - - - - Y Y Y - - - - - -
CLOB - - - - - - - Y Y Y - - - Y - - - - -
BLOB - - - - - - - - - - - - - - Y - - - -
DATE - - - - - - - Y Y - - - - - - Y - - -
TIME - - - - - - - Y Y - - - - - - - Y - -
TIME STAMP - - - - - - - Y Y - - - - - - - - Y -
XML - - - - - - - - - - - - - - - - - - Y
Table 2. Comparisons allowed by Derby. This table displays valid comparisons between data types in Derby. A "Y" indicates that the comparison is allowed.
Types

S
M
A
L
L
I
N
T

I
N
T
E
G
E
R

B
I
G
I
N
T

D
E
C
I
M
A
L

R
E
A
L

D
O
U
B
L
E

F
L
O
A
T

C
H
A
R

V
A
R
C
H
A
R

L
O
N
G

V
A
R
C
H
A
R

C
H
A
R

F
O
R

B
I
T

D
A
T
A

V
A
R
C
H
A
R

F
O
R

B
I
T

D
A
T
A

L
O
N
G

V
A
R
C
H
A
R

F
O
R

B
I
T

D
A
T
A

C
L
O
B

B
L
O
B

D
A
T
E

T
I
M
E

T
I
M
E
S
T
A
M
P

X
M
L

SMALL INT Y Y Y Y Y Y Y - - - - - - - - - - - -
INTEGER Y Y Y Y Y Y Y - - - - - - - - - - - -
BIGINT Y Y Y Y Y Y Y - - - - - - - - - - - -
DECIMAL Y Y Y Y Y Y Y - - - - - - - - - - - -
REAL Y Y Y Y Y Y Y - - - - - - - - - - - -
DOUBLE Y Y Y Y Y Y Y - - - - - - - - - - - -
FLOAT Y Y Y Y Y Y Y - - - - - - - - - - - -
CHAR - - - - - - - Y Y - - - - - - Y Y Y -
VARCHAR - - - - - - - Y Y - - - - - - Y Y Y -
LONG VARCHAR - - - - - - - - - - - - - - - - - - -
CHAR FOR BIT DATA - - - - - - - - - - Y Y - - - - - - -
VARCHAR FOR BIT DATA - - - - - - - - - - Y Y - - - - - - -
LONG VARCHAR FOR BIT DATA - - - - - - - - - - - - - - - - - - -
CLOB - - - - - - - - - - - - - - - - - - -
BLOB - - - - - - - - - - - - - - - - - - -
DATE - - - - - - - Y Y - - - - - - Y - - -
TIME - - - - - - - Y Y - - - - - - - Y - -
TIME STAMP - - - - - - - Y Y - - - - - - - - Y -
XML - - - - - - - - - - - - - - - - - - -