Ver Mensaje Individual
  #3 (permalink)  
Antiguo 02/03/2004, 14:57
dango
 
Fecha de Ingreso: marzo-2004
Mensajes: 2
Antigüedad: 20 años, 2 meses
Puntos: 0
Se puede utilizar claves ajenas en MySQL utilizando un tipo de tabla especial, las tablas InnoDB. Acá va un ejemplo:

Create Table Provincias (
id int(2) not null auto_increment,
nombre char (20) not null,
primary key (id),
unique i1 (nombre) #este indice no es necesario, solo sirve para no ingresar 2 provincias iguales
)Type=InnoDB; #a lo ultimo tenes que indicar el tipo de tabla

Create Table Clientes (
dni int(8) not null ,
nombre char (20) not null,
apellido char(20),
provincia int(2),
primary key (dni),
index i1 (provincia), #acá SI es necesario el indice, si no pones este indice te va a dar un error al declarar esta tabla
foreign key (provincia) references provincias(id) on delete set null on update set null
)Type=InnoDB;

en la opción on delete y on update podes ponerle las opciones set null, cascade o restrict. Creo que por defecto usa restrict. Espero que te haya servido.


Saludos,
Santiago.

Paraná-Entre Ríos-Argentina.