primaria - eliminar tabla mysql
Cómo eliminar una clave única de la tabla mysql (6)
La clave única es en realidad un índice. http://codeghar.wordpress.com/2008/03/28/drop-unique-constraint-in-mysql/
Necesito eliminar una clave única de mi tabla mysql. ¿Cómo puedo eliminar eso usando la consulta de MySQL?
Intenté esto pero no funciona
alter table tbl_quiz_attempt_master drop unique key;
por favor, ayúdame
Gracias
Para agregar un uso de clave único:
alter table your_table add UNIQUE(target_column_name);
Para eliminar un uso de clave único:
alter table your_table drop INDEX target_column_name;
Para aquellos que no saben cómo obtener index_name
que se menciona en la respuesta de key_name
, o key_name
que se menciona en la respuesta de Uday Sawant , puede obtenerlo así:
SHOW INDEX FROM table_name;
Esto mostrará todos los índices para la tabla dada, luego puede elegir el nombre del índice o la clave única que desea eliminar.
Primero, debe saber el nombre exacto del ÍNDICE (clave única en este caso) para eliminarlo o actualizarlo.
Los nombres de ÍNDICE suelen ser los mismos que los nombres de columna. En el caso de más de un ÍNDICE aplicado en una columna, MySQL automáticamente agrega la numeración a los nombres de las columnas para crear nombres INDEX únicos.
Por ejemplo, si se aplican 2 índices en una columna llamada customer_id
- El primer índice se llamará como
customer_id
. - El segundo índice será nombres como
customer_id_2
y así sucesivamente.
Para saber el nombre del índice que desea eliminar o actualizar
SHOW INDEX FROM <table_name>
según lo sugerido por @Amr
Para eliminar un índice
ALTER TABLE <table_name> DROP INDEX <index_name>;
Todas las claves tienen nombre, debes usar algo como esto:
ALTER TABLE tbl_quiz_attempt_master
DROP INDEX index_name;
Para soltar la clave principal use esta:
ALTER TABLE tbl_quiz_attempt_master
DROP INDEX `PRIMARY`;
ALTER TABLE mytable DROP INDEX key_Name;