¿Cómo convertir un archivo .sql a .csv sin tener que importarlo a una base de datos?


Týr

Miembro muy activo
Buenas, tengo archivos de backup.sql de +100 gb que me gustaría convertir a .csv para poder importarlos a un mongodb, ¿tenéis idea de cómo puedo hacerlo?
Le he pedido ayuda a chatgpt pero los scripts que me hace son una basura.

Gracias!
 

oscuro

🔥root313🔥
Paladín de Nodo
Jinete de Nodo
Burgués de Nodo
Noderador
Nodero
Noder Pro
Noder
La idea es hacerlo sin meter el archivo en una database, sino con algún script/lo que sea convertirlo directamente a csv
ah.

Instala Python en tu ordenador y crea un archivo llamado programa.py con el siguiente contenido:

Código:
import csv

# Abrir el archivo .sql para leer
with open('archivo.sql', 'r') as sql_file:
    # Leer todas las líneas del archivo .sql
    sql_lines = sql_file.readlines()

# Obtener los nombres de las columnas
column_names = sql_lines[0].strip().split(',')

# Crear un archivo .csv para escribir
with open('archivo.csv', 'w', newline='') as csv_file:
    # Crear un escritor CSV
    csv_writer = csv.writer(csv_file)

    # Escribir los nombres de las columnas en la primera fila del archivo .csv
    csv_writer.writerow(column_names)

    # Escribir los datos en el archivo .csv
    for line in sql_lines[1:]:
        # Eliminar el salto de línea al final de cada línea
        line = line.strip()

        # Dividir la línea en valores separados por comas
        values = line.split(',')

        # Escribir los valores en el archivo .csv
        csv_writer.writerow(values)

1680120142389.png
 
  • Like
Reacciones : kTo

Týr

Miembro muy activo
ah.

Instala Python en tu ordenador y crea un archivo llamado programa.py con el siguiente contenido:

Código:
import csv

# Abrir el archivo .sql para leer
with open('archivo.sql', 'r') as sql_file:
    # Leer todas las líneas del archivo .sql
    sql_lines = sql_file.readlines()

# Obtener los nombres de las columnas
column_names = sql_lines[0].strip().split(',')

# Crear un archivo .csv para escribir
with open('archivo.csv', 'w', newline='') as csv_file:
    # Crear un escritor CSV
    csv_writer = csv.writer(csv_file)

    # Escribir los nombres de las columnas en la primera fila del archivo .csv
    csv_writer.writerow(column_names)

    # Escribir los datos en el archivo .csv
    for line in sql_lines[1:]:
        # Eliminar el salto de línea al final de cada línea
        line = line.strip()

        # Dividir la línea en valores separados por comas
        values = line.split(',')

        # Escribir los valores en el archivo .csv
        csv_writer.writerow(values)

Ver el archivo adjunto 22910
Probaré, aunque gpt me hizo varios y nada
 

GreenCash

💲is💲
Noderador
Nodero
Noder
Buenas, tengo archivos de backup.sql de +100 gb que me gustaría convertir a .csv para poder importarlos a un mongodb, ¿tenéis idea de cómo puedo hacerlo?
Le he pedido ayuda a chatgpt pero los scripts que me hace son una basura.

Gracias!
Prueba con otra inteligencia. Tengo un post con muchas inteligencias gratis