Foros del Web » Programación para mayores de 30 ;) » Java »

Como mandar un foraneo a la base de datos?

Estas en el tema de Como mandar un foraneo a la base de datos? en el foro de Java en Foros del Web. Hola amigos Tengo una duda...no se donde este el error mi base esta asi create table registro( matricula varchar(10) not null, nombre varchar(40) not null, ...
  #1 (permalink)  
Antiguo 27/09/2004, 19:42
 
Fecha de Ingreso: agosto-2004
Mensajes: 12
Antigüedad: 19 años, 8 meses
Puntos: 0
Como mandar un foraneo a la base de datos?

Hola amigos

Tengo una duda...no se donde este el error

mi base esta asi

create table registro(
matricula varchar(10) not null,
nombre varchar(40) not null,
ap varchar(30) not null,
am varchar(30) not null,
edad int(2) not null,
calleynum varchar(40) not null,
colonia varchar(40) not null,
mundel varchar(50) not null,
cp int(6) not null,
email varchar(50) not null,
telefono varchar(20) not null,
teltrab varchar(20) not null,
telcel varchar(20) not null,
opinion varchar(20) not null,
primary key(matricula) );

create table empresa(
claveempre mediumint auto_increment,
matricula varchar(10) not null,
nomempresa varchar(40) not null,
primary key(claveempre),
foreign key(matricula) references registro);

La base de datos si me corre

Ahora la inserccion del servlets esta asi, claro quitando la llave foranea de la tabla me lo hace perfectamente bien.


Query="INSERT INTO registro VALUES ('"+matricula+"','"+nombre+"','"+ap+"','"+am+"','" +edad+"','"+calleynum+"','"+colonia+"','"+mundel+" ','"+cp+"','"+email+"','"+telefono+"','"+teltrab+" ','"+telcel+"','"+opinion+"')";

Query1="INSERT INTO empresa VALUES ('"+"','"+nomempresa+"')";



Pero ya con la llave foranea lo quise hacer de estas dos formas

Query1="INSERT INTO empresa VALUES ('"+"','"+"','"+nomempresa+"')";

Query1="INSERT INTO empresa VALUES ('"+"','"+matricula+'",'"+nomempresa+"')";


Con las dos formas mencionadas me manda error.


Alguien podria decirme donde esta el error o que le falta?

Saludos
  #2 (permalink)  
Antiguo 28/09/2004, 07:47
Avatar de ko^ke  
Fecha de Ingreso: septiembre-2001
Ubicación: México D.F.
Mensajes: 364
Antigüedad: 22 años, 7 meses
Puntos: 1
djwiskas :

ME queda la duda si este post va en bases de dataos....

Bueno aqui vamos:

Lo primero que se me viene a la mente es que estas usando mysql como base de datos, y que tus tablas estan creadas como MyIsam o algo asi, cuando deberían ser Innodb para que soporten foreign keys.
__________________
Aquí va la firma...
  #3 (permalink)  
Antiguo 28/09/2004, 14:30
 
Fecha de Ingreso: agosto-2004
Mensajes: 12
Antigüedad: 19 años, 8 meses
Puntos: 0
Sip asi es amigo...iba en bd pero no pense en eso...solo pense en que el servlets me manda el error y pues lo pude aqui.

Bueno tienes razon...yo no sabia eso de Innodb tiene que ver para que pueda soportar un foraneo.

Gracias y saludos a todos.
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 11:56.