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

Conocer el tamaño de un campo

Estas en el tema de Conocer el tamaño de un campo en el foro de Mysql en Foros del Web. Hola, Hay alguna forma de conocer el tamaño máximo de un campo? por ejemplo: "nombre varchar(30) NOT NULL," En este caso, se puede saber el ...
  #1 (permalink)  
Antiguo 02/04/2008, 04:35
 
Fecha de Ingreso: julio-2006
Mensajes: 40
Antigüedad: 18 años, 4 meses
Puntos: 0
Conocer el tamaño de un campo

Hola,
Hay alguna forma de conocer el tamaño máximo de un campo?
por ejemplo:

"nombre varchar(30) NOT NULL,"

En este caso, se puede saber el valor 30? mediante algun tipo de consulta?

gracias, un saludo
  #2 (permalink)  
Antiguo 02/04/2008, 08:32
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 8 meses
Puntos: 300
Re: Conocer el tamaño de un campo

zicard,
existen varias formas de hacer lo que quieres, y dependen de la versión de MySQL o de si lo haces desde línea de comandos.
Llamemos 'mitabla' a la tabla de la que quieres saber el tamaño y los datos de un campo llamado 'campo1'
Una consulta como SHOW COLUMNS FROM mitabla LIKE 'campo1'
te dará los datos sobre ese campo.
Si miras en el manual observarás que con DESCRIBE, DESC, EXPLAIN y SHOW FIELDS FROM mitabla podrás obtener resultados parecidos.
En línea de comandos lo consigues con % mysqlshow nombrebase, nombretabla
A partir de MySQL 5.0.2 puedes usar DESCRIBE INFORMATION_SCHEMA.CHARACTER_SETS

Naturalmente, puedes cargar esos datos en un array con PHP para luego extraerlos y utilizarlos como desees.
  #3 (permalink)  
Antiguo 02/04/2008, 08:43
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Re: Conocer el tamaño de un campo

Toda la explicación de jurena es perfectamente válida, y son los métodos para usar al averiguar la longitud de datos en cuestión.
Ahora bien, el único considerando que yo agregaría, es que para poder hacer una lectura de las tablas del esquema, obviamente tienes que tener permiso para leer esa base de datos (INFORMATION_SCHEMA es una base de datos que conserva la definición del esquema de todas las bases, y como tal el acceso debe ser forzosamente privilegiado para los usuarios de nivel SUPER).
Por otro lado, si tu eres quien está modelizando la base de datos y la interfase, y además construyéndola físicamente, la información ¿no la tienes tú? ¿No eres tú el que posee la definición física de la base misma?
¿En qué contexto quieres averiguar la longitud de campos?
  #4 (permalink)  
Antiguo 02/04/2008, 14:36
 
Fecha de Ingreso: julio-2006
Mensajes: 40
Antigüedad: 18 años, 4 meses
Puntos: 0
Re: Conocer el tamaño de un campo

Gracias por la respuesta,
Me habia mirado ya algun manual, pero desconocia si habia otro método,

Actualmente uso "SHOW COLUMNS FROM table FROM database";
que no deja de ser lo mismo que me dices "jurena".

Respecto a porque necesito saberlo es porque usamos, un un gestor dinámico que genera tablas auotmáticamente con campos que pueden ser diferentes, con lo qual necesitamos conocer que tipo y tamaño máximo tiene.

Gracias y 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 22:29.