MySQL que está basado en la web,
En este artículo, obtendremos las tablas que tienen una columna específica independientemente de la base de datos. Primero, vamos a conectarnos a un servidor. La consulta SQL que se va a utilizar es:
select tab.table_schema as database_name,tab.table_name from information_schema.tables as tab inner join information_schema.columns as col on col.table_schema = tab.table_schema and col.table_name = tab.table_name and column_name = 'Specified_Column_Name' where tab.table_type = 'BASE TABLE' order by tab.table_schema, tab.table_name;
A continuación se muestran algunos programas que muestran cómo obtener las tablas de MySQL que tienen una columna en particular:
Ejemplo 1
A continuación se muestra la descripción de la tabla de todas las tablas, la base de datos de muestra tiene las siguientes tablas a las que se accederá mediante un script de Python:
A continuación se muestra el programa para obtener los detalles de las tablas MySQL que tienen una columna en particular:
Python3
# Module Imports import mysql.connector as mariadb import sys # Connect to MariaDB Platform try: conn = mariadb.connect( user="root", password="", database="gfg" ) except mariadb.Error as e: print(f"Error connecting to MariaDB Platform: {e}") sys.exit(1) # Get cursor object cur = conn.cursor() # Get the table and database details having a particular column cur.execute("select tab.table_schema as database_name,tab.table_name \ from information_schema.tables as tab \ inner join information_schema.columns as col \ on col.table_schema = tab.table_schema \ and col.table_name = tab.table_name \ and column_name = 'Worker_ID' \ where tab.table_type = 'BASE TABLE' \ order by tab.table_schema, tab.table_name;") # Display the tables for(database_name, tab) in cur: print(f"Table Name: {tab}Database Name: {database_name}")
Producción:
Ejemplo 2
Aquí hay otro ejemplo para obtener detalles de la tabla independientemente de que la base de datos tenga una columna en particular, a continuación se muestra la descripción de todas las tablas:
A continuación se muestra la secuencia de comandos de python para obtener detalles de la tabla que tienen nombres de columna particulares :
Python3
# Module Imports import mysql.connector as mariadb import sys # Connect to MariaDB Platform try: conn = mariadb.connect( user="root", password="", database="gfg" ) except mariadb.Error as e: print(f"Error connecting to MariaDB Platform: {e}") sys.exit(1) # Get cursor object cur = conn.cursor() # Get the table and database details having a particular column cur.execute("select tab.table_schema as database_name,tab.table_name \ from information_schema.tables as tab \ inner join information_schema.columns as col \ on col.table_schema = tab.table_schema \ and col.table_name = tab.table_name \ and column_name = 'Names' \ where tab.table_type = 'BASE TABLE' \ order by tab.table_schema, tab.table_name;") # Display the tables for(database_name, tab) in cur: print(f"\n\nTable Name: {tab}\nDatabase Name: {database_name}")
Producción:
Publicación traducida automáticamente
Artículo escrito por deepthimgs y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA