hola quiero saber que es posible hacer una clave principal en una tabla en mysql. en caso afirmativo, cuéntame el concepto detrás de esto. porque he visto una mesa en la que dos de clave principal está ahí sin incremento automático conjuntoes posible hacer dos claves principales en una tabla
Respuesta
que sólo puede tener 1 clave primaria, pero:
- se puede combinar más de una columna a ser la clave primaria (tal vez es esto lo que ha visto)
- la clave principal no necesita ser un autoincremento, solo tiene que ser único
- puede agregar más de un índice a una o más columnas para acelerar las instrucciones SELECT (pero ralentizar INSERT/UPDATE)
- esos índices se pueden marcar como únicos, lo que significa s No dejan que se inserta una segunda fila con el mismo contenido en el índice de campos (al igual que una clave principal)
http://dev.mysql.com/doc/refman/5.1/en/create-table.html
[...] Una tabla sólo puede tener una clave principal. [...]
Puede utilizar varias columnas para su clave primaria de esta manera:
CREATE TABLE
newTable
(field1 INT(11)
, field2 INT(11)
, field3 VARCHAR(5)
, field4 BLOB
, PRIMARY KEY (field2, field1, field3) <====
)
No, pero puede tener otros índices ÚNICOS en la tabla, además de la CLAVE PRIMARIA. UNIQUE + NOT NULL es básicamente lo mismo que una clave principal.
Lo que ha visto es probablemente una clave primaria compuesta (más de una columna forma la clave única).
Una tabla puede tener una sola clave PRIMARIA, que puede consistir en una o más columnas. Una tabla también puede tener varias claves adicionales definidas en ella, como restricciones UNIQUE KEY.
No está claro a partir de su descripción si estaba mirando una tabla con varias teclas definidas, o una tabla con una CLAVE PRIMARIA de varias columnas.
utilizar una clave primaria compuesta ...
por ejemplo,
CREATE TABLE table1 (
first_id int unsigned not null,
second_id int unsigned not null auto_increment,
user_id int unsigned not null,
desc text not null,
PRIMARY KEY(first_id, second_id));
También, consulte el ejemplo here
- 1. ¿Puedo tener varias claves principales en una sola tabla?
- 2. ¿Una o dos claves principales en la tabla de muchos a muchos?
- 3. No hay claves principales o candidato en la tabla referenciada
- 4. Python sqlalchemy: tabla sin claves principales y valores duplicados?
- 5. ActiveRecord has_many donde dos columnas de la tabla A son las claves principales en la tabla B
- 6. cómo reutilizar claves principales eliminadas en mysql?
- 7. consulta SQLite para encontrar las claves principales
- 8. Asociación de rieles para dos claves foráneas para la misma tabla en una tabla
- 9. POSTGRESQL Clave externa que hace referencia a las claves principales de dos tablas diferentes
- 10. ¿Es posible paginar una tabla usando jquery?
- 11. En Oracle, ¿es posible "insertar" una columna en una tabla?
- 12. ¿Es posible ordenar una tabla Hash?
- 13. ¿Cómo obtengo las claves principales de una tabla de Postgres a través de plpgsql?
- 14. ¿Es posible hacer que un parámetro implemente dos interfaces?
- 15. Enormes (20 dígitos) Claves principales y SQLite
- 16. ¿alguien puede explicarme qué claves principales realmente hacen?
- 17. ¿Es posible utilizar la misma tabla dos veces en una consulta de selección?
- 18. ¿Clave externa que se refiere a claves principales en varias tablas?
- 19. ¿Cuál es el mejor enfoque para cambiar las claves principales en una aplicación existente de Django?
- 20. ¿Es posible volver dos listas de una función en Python
- 21. Dos claves foráneas en lugar de primaria
- 22. Crear una tabla hash con dos matrices
- 23. Posible ejecutar múltiples bucles principales?
- 24. ¿Es posible hacer una reducción en una matriz con openmp?
- 25. C#, Linq2Sql: ¿Es posible concatenar dos consultas en una?
- 26. ¿Es posible comparar dos imágenes en Javascript?
- 27. ¿Es posible cambiar el nombre de una tabla en Firebird?
- 28. ¿Es posible tratar una tabla como solo lectura en hibernación?
- 29. SQL une dos tablas sin claves/relaciones
- 30. SQL, ¿Cómo consultar con múltiples claves foráneas en una tabla?
También he visto esto. Pero en SQL Server. –