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

mysql: enum y set

Estas en el tema de mysql: enum y set en el foro de Bases de Datos General en Foros del Web. ¿que diferencia hay entre un campo enum y otro que sea set? ¿cuando se usa uno u otro?...
  #1 (permalink)  
Antiguo 09/11/2003, 04:25
Avatar de pereztroff  
Fecha de Ingreso: junio-2002
Ubicación: En la Internet.
Mensajes: 4.068
Antigüedad: 21 años, 10 meses
Puntos: 5
mysql: enum y set

¿que diferencia hay entre un campo enum y otro que sea set?

¿cuando se usa uno u otro?
  #2 (permalink)  
Antiguo 09/11/2003, 23:54
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
ENUM('valor1','valor2',...)
Una enumeración. Un objeto hilera (string) que puede tener solo un valor, elegido de una lista de valores 'valor1', 'valor2', ..., NULO o el valor especial de error "". Un ENUM puede tener un máximo de 65535 valores distintos.

SET('valor1','valor2',...)
Un conjunto. Un objeto hilera que puede tener cero o más valores, cada uno de ellos debe ser elegido de una lista de valores 'valor1', 'valor2', ... Un SET puede tener un máximo de 64 miembros.

Referencia:
6.2 Column Types
6.2.3.3 The ENUM Type
6.2.3.4 The SET Type
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #3 (permalink)  
Antiguo 02/12/2009, 15:24
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: mysql: enum y set

En el caso de requereirse solo 5 opciones, cual es + recomendado?
Cual trabaja + rapido?

Gratitud.
  #4 (permalink)  
Antiguo 02/12/2009, 15:50
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: mysql: enum y set

Si las opciones no sufrirán modificaciones en el transcurso del tiempo de vida de esa base de datos, puedes usar cualquiera. Ambos están definidos en la tabla y es indistinto en cuanto a la performance.
Lo que tienes que tener en cuenta es que un campo SET o un campo ENUM son restricciones de dominio, y no significa que sirvan para validar la entrada de datos por los formularios. Son para restringir los datos al momento de hacer los INSERTs.

Pero si pueden sufrir algún tipo de variaciones, como agregar otra opción o modificar la existente, no sirven. Es mejor hacerlo por medio de una tabla específica.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
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 15:04.