Duda creación tabla oracle

Hola compañeros, estoy creando una tabla con una restricciones pero me salta el error " falta una palabra clave" y no doy con ella.

La tabla en cuestion es esta:

CREATE TABLE CURSOS(
NOMBRE_CURSO VARCHAR2(25) UNIQUE,
COD_CURSO NUMBER(5) PRIMARY KEY,
NIF_PROFESORR VARCHAR2(9),
NUMERO_ALUMNOS NUMBER(3),
FECHA_INICIO DATE,
FECHA_FIN DATE,
HORAS_TOTALES NUMBER(3) NOT NULL,
CONSTRAINT cur_nif_fk FOREIGN KEY(NIF_PROFESORR)

);


Me podríais decir lo que estoy haciendo mal?

Gracias por vuestra ayuda :-|
¿Puedes poner el error exacto que te da? (con código de error)
Gracias, el error exacto es: ORA-00905: falta una palabra clave
Yo diría que el problema está en la fk. Tienes que indicar la tabla con que se relaciona.
kike75 escribió:Yo diría que el problema está en la fk. Tienes que indicar la tabla con que se relaciona.


+1, falta la referencia a la otra tabla. Que por cierto, es lo mismo que le faltaba a uno que puso un post hace unas semanas. En serio, ¿qué mierda de apuntes os dan XD?

hilo_duda-absurda-tabla-oracle_1845632

Para que veas como es.

PD: ¡Joder, si eres el mismo!
Jajajajaj el_popi, muchisimas gracias! No me acordaba de que puse el post xD. Como me puse con otras asignaturas esta se la deje para mas tarde :).

Cuando llegue a casa lo miro detenidamente! Muchas gracias!


Edit: lo había copiado mal, lo tenía asi : CONSTRAINT cur_nif_fk FOREIGN KEY(NIF_PROFESOR) REFERENCE PROFESORES(NIF_PROFESOR),

Y me sigue dando el mismo error, hago la referencia a la tabla externa y a la columna que es, pero un asi nada :s...solo ORA-00905: falta una palabra clave

EDIT2:

Lo dejo por aqui por si es de ayuda a alguien, al final ha sido una tonteria y haciendolo asi no he tenido mayor problema:

CREATE TABLE CURSOS(
NOMBRE_CURSO VARCHAR2(25) UNIQUE,
COD_CURSO NUMBER(5) PRIMARY KEY,
NIF_PROFESOR VARCHAR2(9),
NUMERO_ALUMNOS NUMBER(3),
FECHA_INICIO DATE,
FECHA_FIN DATE,
HORAS_TOTALES NUMBER(3) NOT NULL,
CONSTRAINT cur_nif_fk FOREIGN KEY(NIF_PROFESOR)
REFERENCES PROFESORES(NIF_PROFESOR) ON DELETE CASCADE,
CONSTRAINT cur_fec_CK CHECK(FECHA_INICIO<FECHA_FIN)
);

Gracias :)
5 respuestas