![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Solo una aclaración, que a mi modo de ver no estaría demás, si me lo permiten:
Cuando se trata de insertar en tablas relacionadas deben hacerse según el orden de dependencias: 1. Insertar en tabla maestro 2. Insertar en tabla esclava Esto es así, pues lo exige la integridad referencial. Y no olvidar que el valor a insertar y que forma de enlace entre ambas tablas debe ser el mismo. Es decir que si por ejemplo, en la tabla maestro se inserta un registro con ID igual a 1234, al insertar un registro "esclavo" correspondiente a dicho "maestro", ese mismo valor de ID debe ser ingresado en la clave foranea. El compañero Caral muestra un ejemplo en el que hay dos campos ID. Uno de ellos es para la tabla1 y otro para la tabla2. Si tabla2 es la tabla dependiente ese ID debe ser la clave foránea y contar con su propia clave primaria (Normalmente hablar de ID hace alusión a la clave primaria). Recuerden que para garantizar la referencia de una relación 1 a M se necesita de: 1. Un campo "ID" en tabla maestra que sea clave primaria. 2. Un campo "ID" en tabla esclava que sea clave primaria, para identificar a un registro esclavo de otro. 3. Un campo "FID" en tabla esclava que sea clave foranea. Este se unirá al ID de la tabla maestra para formar la relación. Saludos, |
|
#2
|
|||
|
|||
|
muchas gracias a caral y a delphiusss buenos consejos para realziar la practica ya lo he resuelto al problema, muchas graciassss ahora una ultima pregunta, me conviene q mi tabla 1 en el id(pk) sea de tipo auto incremente y la (fk) de la tabla 2 tmb?? porq si no lo definiera asi me daria error cunado quisiera ingresar un datos con el mismo id... TENKUUU
|
|
#3
|
||||
|
||||
|
Cita:
Un ejemplo: 1. Ingresas un registro maestro: PK = 1. Necesitas ingresar a dicho registro maestro tres esclavos. Veamos añadimos: 1. Agreamos el primer registro: PK = ?, FK = 1 2. Agregamos el segundo registro. OK = ? + ?, FK = 2 ¡Error! No se ha encontrado un registro correspondiente en la tabla maestra. Un campo ID no necesariamente debe ser incremental. Por ello el signo de preguntas. Como debes intuir, depende de otras cuestiones, necesidades y en ciertos casos por el gusto de cada uno. Si empleas autoincrementales no debes agregar en la consulta dicho campo. El motor solito se encarga de asignarle valor. Como dice el amigo Caral: No importa si están o no relacionadas. Si no estan relacionadas las tablas mediante PK y FK, el motor no protesta. Protesta en caso de que SI estén relacionadas y se rompa el principio de integridad referencial. ¿Está ahora más claro? Espero que si .Saludos, |
|
#4
|
|||
|
|||
|
mas claro que el aguaaaaaaaa!!!!! muchas gracias
|
|
#5
|
||||
|
||||
|
Disculpa, he estado fuera estos días.
No pude sentir un poco de preocupación por el tema... ¿Realmente se entendió lo que quise decir? No tengo problemas en explicar mejor el tema.Saludos, |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Consultas Múltiples | theloren07 | Conexión con bases de datos | 11 | 12-07-2007 15:24:32 |
| insercion en ado | vroa74 | Conexión con bases de datos | 1 | 28-03-2007 00:13:27 |
| insercion en GDB | vroa74 | Conexión con bases de datos | 1 | 22-03-2007 11:09:39 |
| Multiples instancias | Phacko | Varios | 1 | 07-09-2004 15:40:25 |
| multiples registros | azaagh | Conexión con bases de datos | 8 | 10-06-2004 02:45:55 |
|