MySQL – Sentencia para conocer las foreign keys

Hoy os traigo una sentencia que he utilizado para desarrollar mi panel de control dinámico. Con la siguiente sentencia tendremos información sobre las foreign keys. Consigo sacar las tablas que tienen foreign keys y saber a que tablas apuntan así conseguiré a la hora de realizar los formularios, sacar un desplegable con los valores de la tabla que apunta.

La sentencia es la siguiente:

SELECT table_name FROM INFORMATION_SCHEMA.key_column_usage WHERE referenced_table_name =’$t’

Lo que hace esta sentencia es mostrar todas las tablas que apuntan a la tabla $t, la cúal, es una variable que esta recorriendo todas las tablas de la actual base de datos. Si $t fuese la tabla noticias, con esta sentencia estaría mostrando todas las tablas que apuntan a noticias, como puede ser la típica tabla imágenes en la que se almacena el id de la notica y las diferentes imágenes que puede tener la noticia.

En esta sentencia también se pueden añadir campos bastante interesantes para poder jugar con ellos, como son:

table_name: como en el ejemplo, muestra la tabla que apunta.

column_name: el nombre del campo que es la foreign key.

referenced_table_name: la tabla a la que apunta.

referenced_column_name: el nombre del campo que apunta la foreign key.

Espero que os haya gustado y que os sirva en el futuro.


Categorías: Desarrollo Web, MySQL, PHP

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *


cuatro − 1 =