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

Información de las columnas de una tabla MySql

Estas en el tema de Información de las columnas de una tabla MySql en el foro de Mysql en Foros del Web. Hola, alguien sabe si puedo sacar la información asociada a un campo de una tabla en mysql?? Me explico mejor Tengo una tabla, por ejp ...
  #1 (permalink)  
Antiguo 20/09/2012, 07:37
 
Fecha de Ingreso: agosto-2011
Mensajes: 14
Antigüedad: 13 años, 2 meses
Puntos: 0
Información de las columnas de una tabla MySql

Hola, alguien sabe si puedo sacar la información asociada a un campo de una tabla en mysql??

Me explico mejor

Tengo una tabla, por ejp usuarios

Contiene los campos

Descripción = Nombre
Tipo = varchar(250)
Info = Aquí se guarda el nombre del usuario.

Sé que con show columns from usuarios me muestra la información de la tabla, es decir, las columnas, el tipo de las columnas, etc, pero no me muestra la info que le he escrito.

¿Sabeis si existe alguna manera de obtenerla?

Un saludo,
Gracias.
  #2 (permalink)  
Antiguo 20/09/2012, 07:42
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
Respuesta: Información de las columnas de una tabla MySql

¿Te refieres a "Aquí se guarda el nombre del usuario."?
No con una consulta a esa tabla.
La pregunta esencia es: ¿para qué quieres recuperar esa descripción? Su uso es únicamente para documentacion de desarrollo. Carece de utilidad en las consultas.

¿Para qué la quieres?
__________________
¿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 20/09/2012, 07:54
 
Fecha de Ingreso: agosto-2011
Mensajes: 14
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Información de las columnas de una tabla MySql

Si, me refiero a esa información.

Es que he hecho un código en asp para gestionar el contenido de las tablas de manera que mira a ver las tablas que son gestionables, mira a ver los campos que tiene y carga un formulario con toda esa información, algo en plan lo que hace cualquier gestor de MySql pero en versión simplificada.

La cosa es que si tengo esa tabla por ejp, al usuario al darle a gestionar esa tabla le aparecerá


Nombre [ ] varchar(250)

y me gustaría que debajo le apareciese la descripción que he puesto en la tabla

Nombre [ ] varchar(250)
*introduce aquí el nombre del usuario.

No sé si me he explicado bien.....

Edito, los [ ] pretenden simular los input box :P
  #4 (permalink)  
Antiguo 20/09/2012, 08:17
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
Respuesta: Información de las columnas de una tabla MySql

Bueno, entonces tienes dos problemas:
1) Esa información no está guardada en la tabla, sino en una base de datos especial, y para recobrarla hay que realizar una consulta algo compleja, que cruza varias tablas.
2) Tampoco es una buena práctica, porque esas tablas son tablas kernel de MySQL, y por cuestiones de seguridad, no deben ser expuestas a código de programación,si no es por razones muy específicas y para usuarios de alto nivel. Exponerlas implica exponer el servidor.
Finalmente, no eres el primero en preguntar esto, y por razones parecidas, y en general no es una buena práctica. No resulta funcional para acceder dinámicamente a las tablas de una base, entre otras cosas, porque no contempla la estructura de una base normalizada, y construir un algoritmo que pueda recuperar en un formulario, un esquema de ingreso que luego se normaliza en 5, 10 o 50 tablas... no parece una buena idea.

Personalmente no te lo recomiendo.

Si quieres la información, está en el manual de referencia, en la descripción de la base INFORMATION_SCHEMA.
__________________
¿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 20/09/2012, 08:34
 
Fecha de Ingreso: agosto-2011
Mensajes: 14
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Información de las columnas de una tabla MySql

Me parece que entonces pasaré de proporcionar esa información.

No obstante no entendí que no es funcional ¿El hacer un algoritmo que recupere la información de las tablas para poder gestionarlas? o ¿El acceder a la información que pido en un principio?.

La idea es crear una especie de panel de contról para que el usuario pueda gestionar la web sin necesidad de usar MySQL.

En la web en la que estoy trabajando ahora el usuario ha pedido poder gestionarla él mismo, metiendo usuarios, modificándolos, metiendo cursos (de eso trata la web), etc.

Según estoy haciendo esto otro cliente ha pedido algo parecido, y he pensado en crear un panel que pueda configurar para cada cliente y que funcione de manera igual para ambos.

Así solo tengo que decirle cuál es la base de datos, algunos datos para la cadena de conexión y cuales son las tablas que llamo "gestionables".

Una vez los algoritmos tienen toda esta información mostrarán una sección para cada tabla gestionable donde el cliente tiene acceso al contenido actual de la tabla, pudiendo eliminar un registro (con ciertas restricciones, como por ejp que ese registro en concreto tenga FK en otras tablas), modificarlo, etc.

Bueno, todo eso ya lo tengo hecho. Además así el código será reutilizable y cambiando los parámetros nada más. Por eso me habia parecido buena sacar la información que decia porque cuando creé la base de datos escribí la información de qué era cada campo.

No obstante, si es tan complejo paso por ahora, ya buscaré otro método (añadiendo un campo info por ejp dentro de la tabla)

Un saludo y gracias!.


EDITO: Perdón, cuando hablo de usuarios no hablo de usuarios registrados en la web. Sino del dueño de la web que quiere gestionar la base de datos de su web.
  #6 (permalink)  
Antiguo 20/09/2012, 08:58
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
Respuesta: Información de las columnas de una tabla MySql

Cita:
No obstante no entendí que no es funcional ¿El hacer un algoritmo que recupere la información de las tablas para poder gestionarlas? o ¿El acceder a la información que pido en un principio?.
Las dos cosas.
La estructura de cada tabla está descripta en diversas tablas, cada una de las cuales contiene una parte de la información: TABLES, COLUMNS, CONSTRAINTS, INDEXES, TABLE_SCHEMA, etc.
Puntualmente, la información que quieres está contenida en COLUMNS si no me equivoco, pero para llegar a ella tienes que cruzar las tres: esquemas, tabla y columnas.
No resulta muy funcional tener que recorrer esta información sólo para recuperar esa información, que por otro lado, la podrías manejar perfectamente con XMLs dedicados a cada base, en la aplicación. A mi entender, podría ser mejor y más seguro.
Ahora bien, si tu idea es crear un cliente de gestion de MySQL... bueno, es una idea interesante. Aunque para un proyecto unipersonal me parece algo complicado.
Lee el link que te pasé y cuentanos qué decides hacer.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: columnas, sql, tabla, tipo, campos
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 16:36.