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

Mysql: formatos mas adecuados de campos

Estas en el tema de Mysql: formatos mas adecuados de campos en el foro de Bases de Datos General en Foros del Web. Para almacenar los campos de mi formulario, que estructura de mysql es la mas adecuada para cada uno de ellos: <input type="text" => supongo que ...
  #1 (permalink)  
Antiguo 20/11/2004, 02:32
 
Fecha de Ingreso: septiembre-2003
Mensajes: 216
Antigüedad: 20 años, 7 meses
Puntos: 0
formatos mas adecuados de campos

Para almacenar los campos de mi formulario, que estructura de mysql es la mas adecuada para cada uno de ellos:

<input type="text" => supongo que varchar

<select size="1" => como guardo el valor del select, como numero de opcion numèrico o me guardo la descripción en un campo varchar

<radio button

<checkbox

<input type="textarea


grácias
jaume
  #2 (permalink)  
Antiguo 20/11/2004, 05:03
Avatar de elangelcaido  
Fecha de Ingreso: septiembre-2003
Ubicación: Oviedo
Mensajes: 1.068
Antigüedad: 20 años, 7 meses
Puntos: 4
Lo que suele hacer es:

Para todo dato que sea contabilizable o se pueda hacer operaciones con el, como la edad, se usa el tipo INT o FLOAT, dependiendo si puede haber decimales o no.

Para casi todo lo demas se usa VARCHAR(n_caracteres)

Debes tener cuidado con campos como el sexo o algunos que a simple vista pueden ser Boolean, ahi ya tienes que mirar tu con que tipo te sera mas facil manejar esos datos.
__________________
Ta Luego! Al final sólo puede quedar uno...
________
lukos.org
  #3 (permalink)  
Antiguo 20/11/2004, 12:08
 
Fecha de Ingreso: septiembre-2003
Mensajes: 216
Antigüedad: 20 años, 7 meses
Puntos: 0
y para el textarea como lo puedo guardar si solo me permite el varchar (255) ?

i los radiobutton i checkbox, son int?

para terminar, el select como obtener el valor y no el número de selec?
  #4 (permalink)  
Antiguo 20/11/2004, 12:37
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 21 años, 5 meses
Puntos: 1
Pues ...

Eso está en dependencia de lo que quieras hacer con el resultado de tus campos. Por ejemplo podrías guardar el valor del option seleccionado en el select. Entonces a la hora de sacarlo harías un arreglo con los valores iniciales de tu select y sacarías el valor que está en la posición que guardastes. Mira el ejemplo:
Código PHP:
 # Supón que en tu BDatos guardastes el valor 1, 3, 4
 
$valores_select_iniciales = array("valor1","valor2","valor3","valor4","valor5");
# para mostrarlos previamente realizada la consulta y obtenido los valores
# En caso de que tu valor inicial fuese 1, recuerda que los arreglos comienzan en 0 
 
echo $valores_select_iniciales[$elemento["campobasededatos"]-1];
# En caso de que tu valor inicial fuese 0
 
echo $valores_select_iniciales[$elemento["campobasededatos"]]; 
si te quieres ahorrar este trabajo entonces inserta el texto del option seleccionado. Para los TEXTAREA podrías utilizar un campo de tipo TINYTEXT que te permite guardar más valores. Los radio button y checkbox dependen del valor que tengan asignados. Puede ser que al checkbox cuando lo hayas seleccionado sea un value de seleccionado. Por ejemplo:
Código HTML:
 <input type="checkbox" name="chk" value="seleccionado"> 
entonces en este caso tu campo sería algo como un varchar (25). Si quieres obtener más información de los tipos de datos soportados por MySQL visita el sitio http://www.mysql.com. Ahí podrás encontrar la información.
Salu2
__________________
Ing. Reynier Pérez Mira
  #5 (permalink)  
Antiguo 22/11/2004, 09:24
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Bueno .. si lees la documentación oficial de Mysql .. veras que no sólo existen los tipos de campos INT y Varchar .. hay muchos más como CHAR() .. TEXT(), BLOD .. etc ... cada uno con sus limitaciones y tipo de datos que gestiona.

En sitios como www.mysql-hispano.com tienes también más tutoriales sobre Mysql.

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 05:35.