Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

[SOLUCIONADO] Agregar atributo UNIQUE a campo ya existente

Estas en el tema de Agregar atributo UNIQUE a campo ya existente en el foro de Mysql en Foros del Web. Buenas... como están... una duda existencial ya que no encuentro nada en Google y similares. Tengo una tabla de usuarios, los cuales uso el campo ...
  #1 (permalink)  
Antiguo 04/04/2013, 14:07
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Agregar atributo UNIQUE a campo ya existente

Buenas... como están... una duda existencial ya que no encuentro nada en Google y similares.

Tengo una tabla de usuarios, los cuales uso el campo id_usuario para registrar los números de documentos de los usuarios y de paso es el PRIMARY KEY, pero no es autoincrement... no tengo ningún campo autoincrement en esta tabla

Dos consultas puntuales...

A- Hay forma de que mi campo id_usuario que es PRIMARY KEY pueda convertilo también en UNIQUE con un comando o algo asi, siendo que ya contiene datos de varios usuarios?

B- Es conveniente que un solo campo sea PRIMARY_KEY y UNIQUE a la vez. Quisiera saber los pro y contras si es que me ayudan a dimensionarlo.

Gracias.
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #2 (permalink)  
Antiguo 04/04/2013, 14:20
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Agregar atributo UNIQUE a campo ya existente

Cita:
A- Hay forma de que mi campo id_usuario que es PRIMARY KEY pueda convertilo también en UNIQUE con un comando o algo asi, siendo que ya contiene datos de varios usuarios?
Un campo que está declarado como PK, por definición es siempre UNIQUE. Es parte de los requisitos de ser PK... La unicidad.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 04/04/2013, 14:37
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Respuesta: Agregar atributo UNIQUE a campo ya existente

Muchas gracias por la aclaración...

Aún así por curiosidad, hay forma de que cualquier campo pueda convertirlo en UNIQUE una vez que ya fue creado?
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #4 (permalink)  
Antiguo 04/04/2013, 14:41
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Agregar atributo UNIQUE a campo ya existente

Cita:
Aún así por curiosidad, hay forma de que cualquier campo pueda convertirlo en UNIQUE una vez que ya fue creado?
Se crea un índice UNIQUE sobre el campo que se quiere definir como tal.
La única precaución es tener en cuenta que si la base ya está en producción y ese campo no se definió como UNIQUE de origen, es altamente probable que haya valores repetidos, y la creación del indice falle.
Normalmente hay que hacer una depuración de datos previa para evitar esa contingencia.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 04/04/2013, 14:48
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Respuesta: Agregar atributo UNIQUE a campo ya existente

Tienes razón.

Muchas Gracias...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...

Etiquetas: database, key, mysql+consulta, primary, unique
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:40.