Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Errores?

Estas en el tema de Errores? en el foro de Oracle en Foros del Web. Hola ! Soy nuevo en el foro...hace un año acabe un grado superior y hace un monton que no toco nada de oracle, bueno a ...
  #1 (permalink)  
Antiguo 04/12/2008, 14:48
MIGUELONGC
Invitado
 
Mensajes: n/a
Puntos:
Errores?

Hola !
Soy nuevo en el foro...hace un año acabe un grado superior y hace un monton que no toco nada de oracle, bueno a lo que voy arreglo a algunas personas sus pcs y se me ocurrio que podria hacerme una "mini" BBDD para tenerlo controlado y me da errores,os paso el sql haber si podeis revisarmelo
Un saludo y mil gracias
************************************************** ***********
DROP TABLE Clientes CASCADE CONSTRAINT;
DROP TABLE Ordenador CASCADE CONSTRAINT;
DROP TABLE Reparacion CASCADE CONSTRAINT;

CREATE TABLE Clientes(
codigocliente VARCHAR2(3),
nombre VARCHAR2(50),
direccion VARCHAR2(50),
email VARCHAR2(30),
telefono NUMBER(20),

CONSTRAINT PK_Clientes PRIMARY KEY (codigocliente));

CREATE TABLE Ordenador(
codcli VARCHAR2(3),
descripcion VARCHAR2(200),
numrep NUMBER(5),
CONSTRAINT PK_Ordenador PRIMARY KEY (codcli));

CREATE TABLE Reparacion(
numreparacion VARCHAR2(5),
servicio VARCHAR2(200),
precio NUMBER(3),
fecha DATE,
CONSTRAINT PK_Reparacion PRIMARY KEY (numreparacion));

ALTER TABLE Clientes
ADD CONSTRAINT FK_Ordenador_Clientes FOREIGN KEY (codcliente_codcli) REFERENCES Ordenador;

ALTER TABLE Ordenador
ADD CONSTRAINT FK_Reparacion_Ordenador FOREIGN KEY (codcli_numreparacion) REFERENCES Reparacion;

ALTER TABLE Reparacion
ADD CONSTRAINT FK_Ordenador_Reparacion FOREIGN KEY (numreparacion_codcli) REFERENCES Ordenador;
  #2 (permalink)  
Antiguo 04/12/2008, 15:56
Avatar de kikolice  
Fecha de Ingreso: marzo-2004
Mensajes: 1.510
Antigüedad: 20 años, 1 mes
Puntos: 7
Respuesta: Errores?

no dices cual es el error que te da pero asi de primera vista me parece que el problema son los constraints foreign, checate la sintaxis de como crearlos por que asi como estan no se crean
__________________
Blogzote.com :-) Mi blog
  #3 (permalink)  
Antiguo 05/12/2008, 07:43
MIGUELONGC
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Errores?

Es cierto no dije el error, en principio son esos los que no me funcionan bien pero lo veo correcto no veo el error pq aunque hace bastante que no hago nada en oracle lo copie en una que funciona y antes me llego a funcionar antes de formatear el pc pero ahora no recuerdo si grabe bien los datos o que, si me pudieras decir como arreglarlo te deberia una

un saludo y gracias
  #4 (permalink)  
Antiguo 06/12/2008, 05:21
MIGUELONGC
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Errores?

Despues de "pegarme" con ello lo he conseguido pero ahora cuando meto los datos se triplican, pq es eso??pq yo solo meto a 2 clientes pero si hago la select *.....que aparece abajo me salen 6 resultados variando con los 1 y 2 que le inserto en los datos tanto como codigocliente como numreparacion, en cuanto acabe no molestare mas xDDDD


DROP TABLE Clientes CASCADE CONSTRAINT;
DROP TABLE Ordenador CASCADE CONSTRAINT;
DROP TABLE Reparacion CASCADE CONSTRAINT;

CREATE TABLE Clientes(
codigocliente NUMBER(3),
nombre VARCHAR2(50),
direccion VARCHAR2(50),
email VARCHAR2(30),
telefono NUMBER(20),
CONSTRAINT PK_Clientes PRIMARY KEY (codigocliente));

CREATE TABLE Ordenador(
codcli NUMBER(3),
descripcion VARCHAR2(200),
numrep NUMBER(5),
CONSTRAINT PK_Ordenador PRIMARY KEY (codcli));

CREATE TABLE Reparacion(
numreparacion VARCHAR2(5),
servicio VARCHAR2(200),
precio NUMBER(3),
fecha DATE,
CONSTRAINT PK_Reparacion PRIMARY KEY (numreparacion));

ALTER TABLE Ordenador
ADD CONSTRAINT FK_Ordenador FOREIGN KEY (codcli) REFERENCES Clientes;

ALTER TABLE Reparacion
ADD CONSTRAINT FK_Reparacion FOREIGN KEY (numreparacion) REFERENCES Ordenador;


/************************************************** ***************************/

INSERT INTO Clientes VALUES (1,'IVAN','PTA TOLEDO','@hotmail.com',000000001);

INSERT INTO Ordenador VALUES (1,'PORTATIL TOSHIBA',1);

INSERT INTO Reparacion VALUES (1,'ELIMINACION DE VIRUS,REPARACION DE SISTEMA',01,'20/NOVIEMBRE/2008');

INSERT INTO Clientes VALUES (2,'ALEJANDRO','BAR2 CONGRESO DE LOS DIPUTADOS','@gmail',000000000);

INSERT INTO Ordenador VALUES (2,'PORTATIL TOSHIBA',2);

INSERT INTO Reparacion VALUES (2,'LIMPIEZA DISIPADOR,REPARACION SIST.OPERATIVO,INST ANTIVIRUS',00,'02/DICIEMBRE/2008');
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:27.