Archives of the TeradataForum
Message Posted: Fri, 06 May 2005 @ 13:18:31 GMT
Subj: | | Re: Failure 5708 Table header size exceeds limit |
|
From: | | Geoffrey Rommel |
> Dcpbl VARCHAR( 6 ) NULL ,
>...
> PARTITION BY CASE_N
> (
> Dcpbl < 200002
> , Dcpbl < 200003
Every time a row is inserted, or some other partitioning operation is done, this definition will require Dcpbl to be converted from varchar to
integer. This is not good!
Let's assume that Dcpbl is a year-month combination and that 2000 is the lowest year needed. Then Dcpbl should be redefined as an integer, and
the partitioning expression can be recoded like this:
PARTITION BY (((Dcpbl / 100) - 2000) * 12) + (Dcpbl MOD 100)
This will produce sequential month numbers from 1 (=Jan. 2000) to N -- more than 5000 years' worth.
|