Ver Mensaje Individual
  #5  
Antiguo 14-05-2013
Avatar de bulc
bulc bulc is offline
Miembro
 
Registrado: jun 2010
Posts: 415
Reputación: 14
bulc Va por buen camino
Clave primaria y clave foránea

La clave primaria no es un índice, aunque funciona como si lo fuera.
Es el campo de dato único que identifica la tabla. Debe ser no nulo por eso mismo.
Suele usarse el prefijo ID_NombreTablaAbreviado por ejemplo: ID_MAT (Ïndentificador de materias), ID_ESPE (Identificativo de la especie). También se llama clave principal de esa tabla.
Para clave primaria se usa un dato numérico autoincrementado o uno varchar con cifras string.
Luego para enlazar esa tabla madre con otra hija (de detalle) se una la clave foránea. Llamada foránea porque usa la clave primaria de otra tabla forastera.
Por ejemplo si haces una base de datos de animales por especies de animales, puedes tener una tabla de ESPECIES, otra de FAMILIAS y otra de ORDENES.
Cada registro de especie se relaciona con una FAMILIA, pero por cada familia hay una, varias o muchas especies.
Para relacionarlas la tabla de especies ESPECIES (además del campo ID_ESP) llevará un campo con el dato ID_FAMILIA, que también estará en la tabla FAMILIAS.
De esta manera al poner el cursor de un DBGrid en un registro con un ID_FAMILIA, señalará en otro DBGrid, el registro de la tabla FAMILIa a la q el animal pertenece.
Esto se consigue relacionando las clave secundaria de una tabla con primaria o principal de otra.
No se deben confundir las claves primaria y foránea con los índices. (Autorepaso)
Responder Con Cita