Streanlit-GEMMA-2B / My_SQL_Connection.py
aryachakraborty's picture
Upload 4 files
1bb8aca verified
raw
history blame contribute delete
No virus
3.62 kB
### In this file we will store all the codes related to connection to my sql server.
import mysql.connector
import pandas as pd
###======================================================================database details-=======================================================
def database_details(host,user,password):
connection = mysql.connector.connect(
host = host,
user = user,
password = password,
buffered = True
)
cursor = connection.cursor()
databases = ("Show databases")
cursor.execute(databases)
db = []
for (databases) in cursor:
db.append(databases[0])
cursor.close()
connection.close()
return db, len(db)
#### =========================================================================retrieving the tables==========================================================
def tables_in_this_DB(host,user,password,db_name):
db_config = {
'host':host,
'user': user,
'password': password,
'database': db_name,
}
connection = mysql.connector.connect(**db_config)
cursor = connection.cursor()
query1 = "SHOW TABLES"
cursor.execute(query1)
tables = cursor.fetchall()
cursor.close()
connection.close()
return tables, len(tables)
#### ==================================================Printing the tables=======================================================================
def printing_tables(host,user,password,db_name):
db_config = {
'host':host,
'user': user,
'password': password,
'database': db_name,
}
connection = mysql.connector.connect(**db_config)
cursor = connection.cursor()
cursor.execute("SHOW TABLES")
table_names = [table[0] for table in cursor.fetchall()]
tables_data = {}
for table_name in table_names:
query = f"SELECT * FROM {table_name}"
cursor.execute(query)
rows = cursor.fetchall()
col_names = [desc[0] for desc in cursor.description]
df = pd.DataFrame(rows, columns=col_names)
tables_data[table_name] = df
cursor.close()
connection.close()
return tables_data
def create_table_command(host,user,password,db_name):
db_config = {
'host': host,
'user': user,
'password': password,
'database': db_name,
}
connection = mysql.connector.connect(**db_config)
cursor = connection.cursor()
query = "SHOW TABLES"
cursor.execute(query)
table_names = [table[0] for table in cursor.fetchall()]
create_table_statements = {}
for table_name in table_names:
query = f"SHOW CREATE TABLE {table_name}"
cursor.execute(query)
create_table_data = cursor.fetchone()
if create_table_data:
# The CREATE TABLE statement is in the second element of the tuple
create_table_statement = create_table_data[1]
create_table_statement = create_table_statement.split("ENGINE=")[0].strip()
create_table_statements[table_name] = create_table_statement
cursor.close()
connection.close()
return create_table_statements
def retrieve_result(host,user,password,db_name,query):
db_config = {
'host': host,
'user': user,
'password': password,
'database': db_name,
}
connection = mysql.connector.connect(**db_config)
cursor = connection.cursor()
query = query
cursor.execute(query)
res = cursor.fetchall()
cursor.close()
connection.close()
return res