CREATE TABLE pelicula (
cip VARCHAR2 (10) NOT NULL,titulo_p VARCHAR2 (45) NOT NULL,
ano_produccion NUMBER (4) NOT NULL,
titulo_s VARCHAR2 (45),
nacionalidad VARCHAR2 (15),
presupuesto NUMBER (11) CHECK (presupuesto > 0),
duración NUMBER (3) CHECK (duracion > 0),
CONSTRAINT pk_pelicula
PRIMARY KEY (cip),
UNIQUE (titulo_p, ano_produccion));
CREATE TABLE personaje (
nombre_persona VARCHAR2 (25) NOT NULL,nacionalidad_persona VARCHAR2 (15),
sexo_persona CHAR (1) CHECK (sexo_persona IN (‘H’, ‘M’)),
CONSTRAINT pk_personaje
PRIMARY KEY (nombre_persona) );
CREATE TABLE tarea (
tarea VARCHAR2 (30) NOT NULL,sexo_tarea CHAR (1) CHECK (sexo_ tarea IN (‘H’, ‘M’, ‘N’))
CONSTRAINT pk_tareaPRIMARY KEY (tarea) );
CREATE TABLE trabajo(
cip VARCHAR2 (25) NOT NULL,tarea VARCHAR2 (35) NOT NULL,
nombre_persona VARCHAR2(25) NOT NULL
CONSTRAINT fk_Tra_Pel FOREING KEY (cip) REFERENCES pelicula (cip) ON DELETE CASCADE,
CONSTRAINT fk_tra_per FOREIGN KEY (nombre_persona) REFERENCES Personaje (nombre_persona) ON DELETE CASCADE,
CONSTRAINT fk_tra_tar FOREIGN KEY (tarea) REFERENCES tarea (tarea) ON DELETE CASCADE );
CREATE TABLE festival (
festival VARCHAR2 (40) NOT NULL,fundacion DATE,
CONSTRAINT pk_festival
PRIMARY KEY (festival),
CHECK (festival = INITCAP (festival)) );
CREATE TABLE certamen (
festival VARCHAR2 (40) NOT NULL,certamen NUMBER (4) NOT NULL,
organizador VARCHAR2 (60),
CONSTRAINT pk_certamen
PRIMARY KEY (festival, certamen),
CONSTRAINT fk_cer_fes FOREIGN KEY (festival) REFERENCES Festival (festival) ON DELETE CASCADE );
CREATE TABLE premio (
premio VARCHAR2 (50),tarea VARCHAR (50),
CONSTRAINT pk_premio
PRIMARY KEY (premio),
CONSTRAINT fk_pre_tar FOREIGN KEY (tarea) REFERENCES Tarea (tarea) );
CREATE TABLE festival_premio (
festival VARCHAR2 (45) NOT NULL,premio VARCHAR2 (50) NOT NULL,
galardon VARCHAR2 (50),
CONSTRAINT pk_festiva_premio
PRIMARY KEY (festival, premio),
CONSTRAINT fk_fepr_fes FOREIGN KEY (festival) REFERENCES Festival (festival) ON DELETE CASCADE,
CONSTRAINT fk_fepr_pre FOREIGN KEY (premio) REFERENCES Premio (premio) ON DELETE CASCADE );
CREATE TABLE otorgo (
festival VARCHAR2 (50) NOT NULL,certamen NUMBER (4) NOT NULL,
premio VARCHAR2 (40) NOT NULL,
cip VARCHAR2 (10) NOT NULL,
CONSTRAINT pk_otorgo
PRIMARY KEY (festival, certamen, premio),
CONSTRAINT fk_otor_fepr FOREIGN KEY (festival, premio) REFERENCES Festival_Premio (festival, premio) ON DELETE CASCADE,
CONSTRAINT fk_otor_cer FOREIGN KEY (festival,certamen) REFERENCES certamen (festival,certamen) ON DELETE CASCADE );
CREATE TABLE reconocimiento (
festival VERCHAR2 (45) NOT NULL,certamen NUMBER (4) NOT NULL,
premio VARCHAr2 (40)NOT NULL,
nombre_persona VARCHAR2 (35) NOT NULL,
CONSTRAINT pk_recononocimiento
PRIMARY KEY (festival, certamen, premio),
CONSTRAINT fk_reco_fepr FOREIGN KEY (festival, premio) REFERENCES certamen (festival, certamen) ON DELETE CASCADE,
CONSTRAINT fk_reco_per FOREIGN KEY (nombre_persona) REFERENCES personaje (nombre_persona) ON DELETE CASCADE );
CREATE TABLE cine (
cine VARCHAR2 (25) NOT NULL,ciudad_cine VARCHAR2 (25),
direccio_cine VARCHAR2 (65),
CONSTRAINT pk_cine
PRIMARY KEY (cine),
CONSTRAINT ck_cin
CHECK (cine=INITCAP (cine)) );
CREATE TABLA sala (
cine VARCHAR2 (25) NOT NULL,sala NUMBER (2) NOT NULL,
aforo NUMBER(4),
CONSTRAINT pk_sala
PRIMARY KEY (cine,sala),
CONSTRAINT fk_sal_cin FOREIGN KEY (cine) REFERENCES cine (cine) ON DELETE CASCADE,
CONSTRAINT ck_afr
CHECK (aforo > 0));
CREATE TABLA proyeccion(
cine VARCHAR2 (25) NOT NULL,sala NUMBER(2) NOT NULL,
cip VARCHAR2 (10) NOT NULL,
fecha_estreno DATE NOT NULL,
dias_ estreno NUMBER(3),
espectadores NUMBER(6),
recaudación NUMBER(8),
CONSTRAINT pk_proyeccion
PRIMARY KEY (cine,sala,cip,fecha_estreno),
CONSTRAINT fk_pro_sal FOREIGN KEY (cine,sala) REFERENCES sala(cine, sala) ON DELETE CASCADE,
CONSTRAINT fk_pro_pel FOREIGN KEY (cip) REFERENCES pelicula (cip) ON DELETE CASCADE,
CONSTRAINT ck_dia
CHECK (dias_estreno > 0) );
por lo tanto podemos concluir que el lenguaje de oracle es similar que al de SQL SERVER ya que los dos emplean PL/SQL un lenguaje de Quinta generación y por lo tanto asi quedaria nuestras lineas de código sin errores, deacuerdo a la estructura correcta de elaboracion.