me gustaria saber que diferencia hay entre decirle a un campo que es la clave principal y/o decirle que es indexado sin duplicados. gracias VICTOR DELGADILLO ================= Clave principal es solo una por tabla, indexados sin duplicados pueden ser varios en una tabla. La Clave principal tambien es utilizada internamente para las relaciones (la parte tecnica de eso si la desconozco). PABLO ===== corregirme si estoy equivocado. la clave principal solo sirve para establecer relaciones de 1 a infinito, y puede tener mas de 1 campo como clave principal. yo creo que además de todo esto tambien dan muchos problemas. con un poco de suerte seguinos hablando del tema y al final seguro que sacamos algo de provecho. VICTOR DELGADILLO ================= La clave principal no es solo para establecer relaciones (de cualquier tipo), tambien es para organizar la lectura de la tabla y si, esta clave principal (igual que cualquier otro indice) puede incluir varios campos. CARCAR ====== Hola: dices de la clave principal: "yo creo que además de todo esto tambien dan muchos problemas." Yo creo que mas bien los evitan, si razonas los problemas que puedan causar, te podremos razonar porqué no lo son. VICTOR DELGADILLO ================= Las claves principales son utiles en que no te dejan insertar registros duplicados... por ejemplo, un numero de suplidor o cliente (que nunca debe duplicarse) o cualquier combinacion de llaves (por ejemplo, el pago por cliente / mes / año que debe ser solamente uno... puedes declarar la llave principal como los tres campos. Si se trata de pagar doble, el sistema automaticamente advierte la duplicidad de llaves... CHEA ==== Además de decirle que es indexado y sin duplicados, para que sea clave única también debes decirle que sea requerido y que no admita null ni cadena vacía. Access necesita un campo así para usar internamente como identificador único de registro, exigiendo siempre que exista una clave única se evitan complicaciones. Otra diferencia es que Access creará un índice que en lugar de llamarse como el campo se llamará PrimaryKey. Si trabajas con índices mediante código, es algo que hay que tener en cuenta.