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

como declaro un campo que tiene muchos estados en mysql

Estas en el tema de como declaro un campo que tiene muchos estados en mysql en el foro de Bases de Datos General en Foros del Web. al momento de crear mi tabla tengo una campo que es estado este puede tener 0 cuando es pedido 1 en proceso 2 creado 3 ...
  #1 (permalink)  
Antiguo 14/12/2004, 12:07
 
Fecha de Ingreso: noviembre-2004
Mensajes: 21
Antigüedad: 19 años, 6 meses
Puntos: 0
como declaro un campo que tiene muchos estados en mysql

al momento de crear mi tabla tengo una campo que es estado

este puede tener
0 cuando es pedido
1 en proceso
2 creado
3 rechazado


como haria al momento de crearla

TABLA: PEDIDO
create table pedido (
num_pedido autoincrement,
descripcion varchar 150,
coa varchar 4,
cna varchar 5,
estado ¿?¿?¿?¿?¿?¿?¿?¿?¿,
fecha_pedido date,
fecha_proceso date,
fecha_creacion date,
usuario varchar 30,
new_code varchar 15,
comentario text,
urgencia (aca tambien seria algo parecido porqe 0-normal 1- urgente)
);


gracias de antemano y saludos a todos los que siempre me ayudan y alos demas tambien =p

  #2 (permalink)  
Antiguo 14/12/2004, 13:20
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Puedes hacerlo de varias maneras según nivel de "normalización" que busques ..

Si esos N estados son fijos .. puedes usar un campo tipo ENUM() de Mysql .. ahí defines tus opciones y vía programación de PHP o lo que uses o simple HTML defines los N opciones en un <select> de HTML fijo en tu código .. Si aumentas alguna opción tendras que modificar tu código HTML/PHP y tu tabla ..

http://dev.mysql.com/doc/mysql/en/ENUM.html

Si quieres más grado de "normalización" .. puedes crear una tabla extra para esos registros de "estados" y relacionarla por "ID" con tu tabla maestra en relación 1 -> N

tu_tabla
id_tu_tabla
id_estado
blabla
blablabla

estados_Tabla
id_estado
nombre
codigo

Así .. si añades algún nuevo estado tu código no varia pues lo que harás es leer esa tabla para ofrecer los posibles estados a colocar.

Si quieres leer más sobre normalización para Mysql:
http://www.mysql-hispano.org/page.php?id=16


Un saludo,
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 04:50.