I have a table with a column that will join with one of several tables based on the value of another column. I'm not sure if this column can be set as a foreign key to any of these tables, may be simply bad design on my part. The item_type_id column of a record of 'A' will reference one of the 'type' table records depending upon what the value of the record's item_type column is.
Is there a way to set the item_type_id column in Table A as a foreign key to the other tables depending? Or would there be a better way to design this schema?
TIA
CREATE TABLE ABC(
id SERIAL PRIMARY
KEY,
item_type character varying(10) NOT NULL,
item_type_id INTEGER
);
CREATE TABLE typeA(
typeA_id SERIAL PRIMARY
KEY);
CREATE TABLE typeB(
typeB_id SERIAL PRIMARY
KEY );
CREATE TABLE typeC(
typeC_id SERIAL PRIMARY
KEY );
--
Kevin McCarthy
kemccarthy1@gmail.com