<snip>
everyone who use the table may not want to use the long names.
</snip>
Actually I name stuff just to discourage use of the short names.
CREATE OR REPLACE TABLE Lookup_table for system name T00000001
(
Lookup_item for column C000000001 VARCHAR(100) ALLOCATE(20)
not null constraint Lookup_table_primary_key PRIMARY KEY, -- Item to lookup
Lookup_value_character for column C000000002 VARCHAR(100) ALLOCATE(10) with default null, -- Value of item (if character)
Lookup_value_integer for column C000000003 bigint with default null, -- Value of item (if integer)
Lookup_value_decimal for column C000000004 decimal (25, 5) with default null, -- Value of item (if decimal)
CONSTRAINT Lookup_table_has_a_value CHECK ( -- One, and only one, of the lookup result columns will have a value.
(Lookup_value_character is not null and lookup_value_integer is null and Lookup_value_decimal is null) or
(Lookup_value_character is null and lookup_value_integer is not null and lookup_value_decimal is null) or
(Lookup_value_character is null and lookup_value_integer is null and lookup_value_decimal is not null))
)
RCDFMT T00000001R
;
Rob Berendt
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact
[javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.