import csv
import mysql.connector
# Establecer conexión a la base de datos MySQL
db = mysql.connector.connect(
host="localhost", # Host donde se ejecuta MySQL
user="root", # nombre de usuario de MySQL
password="", # contraseña de MySQL
database="DATASETdbej0" # Nombre de la base de datos
)
# Crear un cursor para ejecutar operaciones en la base de datos
cursor = db.cursor()
# Ruta al archivo CSV
archivo_csv = 'datos_importar.csv'
# Abrir el archivo CSV para lectura
with open(archivo_csv, 'r', encoding='utf-8') as file:
# Crear un lector CSV que espera que los campos estén delimitados por comas
csv_data = csv.reader(file)
# Saltar la cabecera del archivo CSV
next(csv_data)
# Preparar la consulta SQL para insertar datos en la base de datos
query = """
INSERT INTO DATASETtabla (Nreg, dia_mes_año, hora_min_seg, LM35, TempInt, SetPoint, RGB, Nmed, NmedOnOff)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)
"""
# Iterar sobre cada fila del archivo CSV
for row in csv_data:
# Ajustar el formato de fecha de 'dia/mes/año' a 'año-mes-dia'
row[1] = '-'.join(reversed(row[1].split('/')))
# Ajustar los tipos de datos específicos para las columnas booleanas y otras necesidades
# Convertir 'NmedOnOff' a booleano, asumiendo que '1' es True y '0' es False
row[8] = bool(int(row[8])) # Convertir el texto a entero y luego a booleano
# Ejecutar la consulta SQL con los datos de la fila actual
cursor.execute(query, row)
# Confirmar los cambios en la base de datos para asegurarse de que se guardan
db.commit()
# Cerrar el cursor y la conexión a la base de datos
cursor.close()
db.close()
# Imprimir un mensaje de confirmación
print("Datos cargados exitosamente en la base de datos.")
Loading
pi-pico-w
pi-pico-w