Hola tengo un problema al crear tablas y no sé que puede ser:
El código es siguiente:
Código SQL:
Ver originalDROP TABLE traficos;
CREATE TABLE traficos(
oid_traficos INTEGER NOT NULL,
direccion VARCHAR2(50),
telefono INTEGER,
email VARCHAR2(40),
oid_examenespracticos INTEGER,
PRIMARY KEY (oid_traficos),
FOREIGN KEY (oid_examenespracticos) REFERENCES examenespracticos
);
DROP TABLE examinadores;
CREATE TABLE examinadores(
oid_examinadores INTEGER NOT NULL,
fechaexamen DATE,
nombre VARCHAR2(30),
apellidos VARCHAR2(30),
oid_examenespracticos INTEGER,
oid_traficos INTEGER,
dni VARCHAR2(9),
PRIMARY KEY (oid_examinadores),
FOREIGN KEY (oid_examenespracticos) REFERENCES examenespracticos,
FOREIGN KEY (oid_traficos) REFERENCES traficos
);
DROP TABLE examenespracticos;
CREATE TABLE examenespracticos(
oid_examenespracticos INTEGER NOT NULL,
fechapractico DATE,
oid_alumnos INTEGER,
oid_examinadores INTEGER,
PRIMARY KEY (oid_examenespracticos),
FOREIGN KEY (oid_alumnos) REFERENCES alumnos,
FOREIGN KEY (oid_examinadores) REFERENCES examinadores
);
DROP TABLE examenesteoricos;
CREATE TABLE examenesteoricos(
oid_examenesteoricos INTEGER NOT NULL,
nota BOOLEAN,
fechateorico DATE,
oid_alumnos INTEGER,
PRIMARY KEY (oid_examenesteoricos),
FOREIGN KEY (oid_alumnos) REFERENCES alumnos
);
DROP TABLE profesores;
CREATE TABLE profesores(
oid_profesores INTEGER NOT NULL,
telefono INTEGER,
email VARCHAR2(30),
oid_autoescuela INTEGER,
oid_clasespracticas INTEGER,
oid_clasesteoricas INTEGER,
oid_personas INTEGER,
PRIMARY KEY (oid_profesores),
FOREIGN KEY (oid_autoescuelas) REFERENCES autoescuelas,
FOREIGN KEY (oid_clasespracticas) REFERENCES clasespracticas,
FOREIGN KEY (oid_clasesteoricas) REFERENCES clasesteoricas,
FOREIGN KEY (oid_personas) REFERENCES personas
);
DROP TABLE clasesteoricas;
CREATE TABLE clasesteoricas(
oid_clasesteoricas INTEGER NOT NULL,
oid_autoescuelas INTEGER,
calificacion BOOLEAN,
PRIMARY KEY (oid_clasesteoricas),
FOREIGN KEY (oid_autoescuelas) REFERENCES autoescuelas
);
DROP TABLE clasespracticas;
CREATE TABLE clasespracticas(
oid_clasespracticas INTEGER NOT NULL,
fechaclase DATE,
calificacion BOOLEAN,
PRIMARY KEY (oid_clasespracticas)
);
DROP TABLE alumnos;
CREATE TABLE alumnos(
oid_alumnos INTEGER,
direccion VARCHAR2(50),
telefono INTEGER,
email VARCHAR2(30),
fechaNacimiento DATE,
tasas_pagadas BOOLEAN,
oferta VARCHAR2(30),
oid_persona INTEGER,
oid_clasesteoricas INTEGER,
oid_clasespracticas INTEGER,
oid_examenespracticos INTEGER,
PRIMARY KEY (oid_alumnos),
FOREIGN KEY (oid_personas) REFERENCES personas,
FOREIGN KEY (oid_clasesteoricas) REFERENCES clasesteoricas,
FOREIGN KEY (oid_clasespracticas) REFERENCES clasespracticas,
FOREIGN KEY (oid_examenespracticos) REFERENCES examenespracticos
);
DROP TABLE personas;
CREATE TABLE personas(
oid_personas INTEGER NOT NULL,
dni VARCHAR2(9),
nombre VARCHAR2(30),
apellidos VARCHAR2(30),
PRIMARY KEY (oid_personas)
);
DROP TABLE autoescuelas;
CREATE TABLE autoescuelas(
oid_autoescuelas INTEGER NOT NULL,
nombre VARCHAR2(30),
numeroalumnos INTEGER,
telefono INTEGER,
email VARCHAR2(30),
PRIMARY KEY (oid_autoescuelas)
);
DROP TABLE matriculas;
CREATE TABLE matriculas(
oid_matriculas INTEGER NOT NULL,
fechamatricula DATE,
/*precio NUMBER(*,2),*/
oid_alumnos INTEGER,
oid_autoescuelas INTEGER,
PRIMARY KEY (oid_matriculas),
FOREIGN KEY(oid_alumnos) REFERENCES alumnos,
FOREIGN KEY(oid_autoescuelas) REFERENCES autoescuelas
);
Gracias de antemano