| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> comp.databases.theory -> Re: circular relationships ok?
-CELKO- wrote:
>>>This is an implementation detail that can be got right or got wrong, not an argument for refusing to support the rules of the business. <<
>>>(It is also, dare I say, a glaring example of why in the 21st century we should be asking why we are still satisfied only to be able to make one incremental update to one row of one table at time.) <<
N.B. The 'GO' lines ae added/needed by my front end.
CREATE TABLE IS3.SET_HEADERS (
USERID CHARACTER(8) NOT NULL,
SET_NAME CHARACTER(25) NOT NULL,
DESCRIPTION VARCHAR(250),
DATE_CREATED DATE NOT NULL DEFAULT CURRENT DATE,
DATE_LAST_USED DATE NOT NULL DEFAULT CURRENT DATE,
CREATION_LOCN INTEGER NOT NULL,
SHARED CHARACTER(1),
SQL_CODE VARCHAR(3500),
INACTIVE CHARACTER(1),
PRIMARY KEY(USERID,SET_NAME)
ADD CONSTRAINT INACTIVE
CHECK (INACTIVE in ('Y','N'))
ADD CONSTRAINT SHARED
CHECK (SHARED in ('Y','N'))
-------------------------------------------This one-------------------
ALTER TABLE IS3.SET_HEADERS
ADD CONSTRAINT USERID_FK
FOREIGN KEY(USERID)
REFERENCES IS3.USERS(USERID)
ON DELETE NO ACTION
ON UPDATE NO ACTION
ADD CONSTRAINT CREATION_LOCN_FK
FOREIGN KEY(CREATION_LOCN)
REFERENCES IS3.LOCATIONS(LOC_ID)
ON DELETE NO ACTION
ON UPDATE NO ACTION
CREATE TABLE IS3.USERS (
USERID CHARACTER(8) NOT NULL,
PASSWD CHARACTER(8) NOT NULL,
EMPLOYER_ID INTEGER NOT NULL,
MAX_LOC INTEGER NOT NULL,
PERSONAL_ID INTEGER,
LAST_LOC INTEGER,
LAST_SET_NAME CHARACTER(25),
LAST_SET_USERID CHARACTER(8),
PRIMARY KEY(USERID)
-----------------------------And this one------------------------------
ALTER TABLE IS3.USERS
ADD CONSTRAINT USR_LASTS_FK
FOREIGN KEY(LAST_SET_USERID, LAST_SET_NAME)
REFERENCES IS3.SET_HEADERS(USERID, SET_NAME)
ON DELETE NO ACTION
ON UPDATE NO ACTION
ADD CONSTRAINT USR_PRES_FK
FOREIGN KEY(PERSONAL_ID)
REFERENCES IS3.ENTITIES_PUB(ENTITY_ID)
ON DELETE NO ACTION
ON UPDATE NO ACTION
ADD CONSTRAINT USR_EMP_FK
FOREIGN KEY(EMPLOYER_ID)
REFERENCES IS3.CONTROLLERS(CONTROLLER)
ON DELETE NO ACTION
ON UPDATE NO ACTION
ADD CONSTRAINT USR_LASTL_FK
FOREIGN KEY(LAST_LOC)
REFERENCES IS3.LOCATIONS(LOC_ID)
ON DELETE NO ACTION
ON UPDATE NO ACTION
![]() |
![]() |