Todo sobre INFORMATION_SCHEMA | Las tablas de las tablas de bases de datos. Perfectas para analizar los datos de los datos de las bases de datos.
¿Por que hacer las consultas con SELECT y no con SHOW? (2/2)
Information_schema, que no existía antes de la versión 5 de MySQL, es una base de datos de información. Guarda los metadatos de las otras bases de datos. Los metadatos son información que permite describir datos.
Anteriormente, los comandos SHOW permitían acceder a los diferentes metadatos, por ejemplo SHOW TABLES. Pero esta sintexis no es estándar y fue introducida por MySQL AB, de modo que este comando no se encuentra en otros SGBD.
Sin embargo, al utilizar una base de datos como banco de metadatos, cualquier usuario puede obtener fácilmente la información que le interese porque basta con efectuar consultas SELECT.
Una de las ventajas es que cada usuario puede formatear el resultado obtenido según sus necesidades. Así puede obtener exactamente la información que necesita.
Por ejemplo, el comando SHOW TABLES from 'mi_base_de_datos' devuelve unicamente el nombre de las tablas disponibles. Para obtener información util como el motor de almacenamiento utilizado, el tipo de tabla, tabla temporal o vista, el número de registros en cada tabla, etc, se puede ejecutar el comando SELECT TABLE_NAME, TABLE_TYPE, ENGINE from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA = 'mi_base_de_datos';