Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: How to insert values?

Re: How to insert values?

From: Ana C. Dent <anacedent_at_hotmail.com>
Date: Sun, 18 May 2003 13:23:38 -0700
Message-ID: <gZRxa.48517$MJ5.38683@fed1read03>


Me wrote:
> On Sun, 18 May 2003 20:45:18 +0200, Frank wrote:
>
> :Me wrote:
> :> CREATE TABLE EMPLOYEE
> :> (
> :> FNAME VARCHAR(15) NOT NULL,
> :> MINIT CHAR,
> :> LNAME VARCHAR(15) NOT NULL,
> :> SSN CHAR(9) NOT NULL,
> :> BDATE DATE,
> :> ADDRESS VARCHAR(30),
> :> SEX CHAR,
> :> SALARY DECIMAL(10,2),
> :> SUPERSSN CHAR(9),
> :> DNO INT NOT NULL,
> :> PRIMARY KEY(SSN),
> :> FOREIGN KEY(SUPERSSN) REFERENCES EMPLOYEE(SSN),
> :> FOREIGN KEY(DNO) REFERENCES DEPARTMENT(DNUMBER));
> :>
> :> CREATE TABLE DEPARTMENT
> :> (
> :> DNAME VARCHAR(15) NOT NULL,
> :> DNUMBER INT NOT NULL,
> :> MGRSSN CHAR(9) NOT NULLL,
> :> MGRSTARTDATE DATE,
> :> PRIMARY KEY(DNUMBER),
> :> UNIQUE(DNAME),
> :> FOREIGN KEY(MBRSSN) REFERENCES EMPLOYEE(SSN));
> :>
> :> CREATE TABLE DEPT_LOCATIONS
> :> (
> :> DNUMBER INT NOT NULL,
> :> DLOCATION VARCHAR(15) NOT NULL,
> :> PRIMARY KEY(DNUMBER,DLOCATION),
> :> FOREIGN KEY(DNUMBER) REFERENCES DEPARTMENT(DNUMBER));
> :>
> :> CREATE TABLE PROJECT
> :> (
> :> PNAME VARCHAR(15) NOT NULL,
> :> PNUMBER INT NOT NULL,
> :> PLOCATION VARCHAR(15),
> :> DNUM INT NOT NULL,
> :> PRIMARY KEY(PNUMBER),
> :> UNIQUE(PNAME),
> :> FOREIGN KEY(DNUM) REFERENCES DEPARTMENT (DNUMBER));
> :>
> :> CREATE TABLE WORKS_ON
> :> (
> :> ESSN CHAR(9) NOT NULL,
> :> PNO INT NOT NULL,
> :> HOURS DECIMAL(3,1) NOT NULL,
> :> PRIMARY KEY(ESSN,PNO),
> :> FOREIGN KEY(ESSN) REFERENCES EMPLOYEE(SSN),
> :> FOREIGN KEY(PNO) REFERENCES PROJECT(PNUMBER));
> :>
> :> CREATE TABLE DEPENDENT
> :> (
> :> ESSN CHAR(9) NOT NULL,
> :> DEPENDENT_NAME VARCHAR(15) NOT NULL,
> :> SEX CHAR,
> :> BDATE DATE,
> :> RELATIONSHIP VARCHAR(8),
> :> PRIMARY KEY(ESSN,DEPENDENT_NAME),
> :> FOREIGN KEY(ESSN) REFERENCES EMPLOYEE(SSN));
> :>
> :> What is the correct sequence of commands to create the above table?
> :>
> :> Any way I have managed to create this table but whenever I try to
> :> insert values I get the following similar error for all the tables:
> :>
> :> ORA-02291: integrity constraint (user.SYS_C00848) violated - parent
> :> key not found
> :>
> :> Thanks.
> :>
> :
> :Cannot be done, unless you disable the foreign key constraints.
> :I would reconsider this design; there's no clear starting point.
> :And char and varchar are usually
> :coded as varchar2 in Oracle, to name another issue.
>
> I don't know. I have a book
> Fundamentals of Database Systems
> Ramez Elmasri
> Shamkant B. Navthe
>
> Which uses this example constantly in the book to explain queries.
> I managed to create the table by leaving the foreign keys part.
> Then altered all the tables to include the foreign keys.
>
> Now I cannot insert anything into any table!
>
> Is there any way of solving this?
>
> Thanks a lot.
>

The "obvious"(?) solution is to.....

DISABLE the primary & foreign keys.
Load the data into the tables.
ENABLE the primary & foreign keys. Received on Sun May 18 2003 - 15:23:38 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US