Foro de elhacker.net

Programación => Bases de Datos => Mensaje iniciado por: medinadek en 26 Agosto 2011, 21:39 pm



Título: PROBLEMA CON CONSTRAINT EN BASE DE DATOS
Publicado por: medinadek en 26 Agosto 2011, 21:39 pm
Buenas noches, tengo siguientes tablas:

REM ******** TABLA CURSO: **********

CREATE TABLE CURSO (
 COD_CURSO NUMBER (5) NOT NULL PRIMARY KEY,
 GRUPO VARCHAR2 (5) NOT NULL,
 AÑO_CURSO NUMBER (1) NOT NULL
);

INSERT INTO CURSO VALUES (001,'A',1);

INSERT INTO CURSO VALUES (002,'B',1);

INSERT INTO CURSO VALUES (003,'C',1);

INSERT INTO CURSO VALUES (004,'D',2);

INSERT INTO CURSO VALUES (005,'E',1);

INSERT INTO CURSO VALUES (006,'F',1);

INSERT INTO CURSO VALUES (007,'G',2);

INSERT INTO CURSO VALUES (008,'H',1);

INSERT INTO CURSO VALUES (009,'I',2);

INSERT INTO CURSO VALUES (010,'J',1);
COMMIT;





REM ******** TABLA AULA: **********

CREATE TABLE AULA (
 COD_AULA  VARCHAR2(5) NOT NULL,
 DENOMINACION  VARCHAR2(100),
 CONSTRAINT PK_AULA PRIMARY KEY (COD_AULA)
) ;

INSERT INTO AULA VALUES ('1001','2ºDAI');
COMMIT;







REM ******** TABLA INCIDENCIA: **********

CREATE TABLE INCIDENCIA (
 COD_INCIDENCIA NUMBER (5) NOT NULL PRIMARY KEY,
 DESCRIPCION VARCHAR2 (50) NOT NULL,
 SOLUCION VARCHAR2 (50) NOT NULL,
 FECHA_SOLUCION DATE NOT NULL
);

INSERT INTO INCIDENCIA VALUES ('40001','ALGO ABRA PASADO','NADA','10/10/2011');
INSERT INTO INCIDENCIA VALUES ('40002','ALGO ABRA TERMIANDO','ALGO','10/09/2011');
COMMIT;






REM ******** TABLA EQUIPOS: **********

CREATE TABLE EQUIPOS( 
ID_MATERIAL NUMBER(3) NOT NULL PRIMARY KEY ,
ID_PROFESOR  NUMBER(3) NOT NULL ,
MEMORIA VARCHAR(15)  NOT NULL,
PROCESADOR VARCHAR(15) NOT NULL,
DISCO_DURO VARCHAR2(15) NOT NULL,
VGA VARCHAR2(15) NOT NULL,
RED_CABLE VARCHAR(25) NOT NULL,
RED_WIFI VARCHAR(25) NOT NULL,
ID_ALUMNO NUMBER(3),
CONSTRAINT FK_EQUIPOS_PROFESOR FOREIGN KEY (ID_PROFESOR) ,
CONSTRAINT FK_EQUIPOS_ALUMNO FOREIGN KEY (ID_ALUMNO) REFERENCES ALUMNO ON DELETE CASCADE
);

INSERT INTO EQUIPOS VALUES (346,345,'kingston', 'asus', 'seagate', ' Nvidia', 'Defcon', 'pirata', '232');
COMMIT;







REM ******** TABLA DISPOSITIVOS: **********


CREATE TABLE DISPOSITIVOS (
ID_MATERIAL NUMBER (10) NOT NULL PRIMARY KEY,
TIPO VARCHAR2 (20) NOT NULL,
DENOMINACION VARCHAR2 (20),
MARCA VARCHAR2 (10) NOT NULL,
NUM_SERIE NUMBER (10) NOT NULL
);

INSERT INTO DISPOSITIVOS VALUES (0000000001,'ORACLE', 'ADAIG', 'INTEL', '4343434');
COMMIT;

Y claro las tablas CURSO,AULAS,INCIDENCIAS creo que estan bien, pero las de DISPOSITIVOS Y EQUIPOS NO ME SALE HACER LO DE CONSTRAINT. Algen me pueda echar una mano en esto, Gracias.


Título: Re: PROBLEMA CON CONSTRAINT EN BASE DE DATOS
Publicado por: Beakman en 4 Septiembre 2011, 21:33 pm
Te tira algún error ? o warning ?

Citar
CONSTRAINT FK_EQUIPOS_PROFESOR FOREIGN KEY (ID_PROFESOR) ,
CONSTRAINT FK_EQUIPOS_ALUMNO FOREIGN KEY (ID_ALUMNO) REFERENCES ALUMNO ON DELETE CASCADE

Esto no debería ser así:
Citar
CONSTRAINT FK_EQUIPOS_PROFESOR FOREIGN KEY (ID_PROFESOR)  references profesor( campo ),
CONSTRAINT FK_EQUIPOS_ALUMNO FOREIGN KEY (ID_ALUMNO) REFERENCES ALUMNO( campo ) ON DELETE CASCADE