¿Es posible exportar la tabla sqlite3 al formato csv o xls? Estoy usando python 2.7 y sqlite3.¿Es posible exportar la tabla sqlite3 a csv o similar?
Respuesta
Toqué este guión muy básico juntos usando una clase de ejemplo ligeramente modificada de the docs; simplemente exporta una tabla completa a un archivo CSV:
import sqlite3
import csv, codecs, cStringIO
class UnicodeWriter:
"""
A CSV writer which will write rows to CSV file "f",
which is encoded in the given encoding.
"""
def __init__(self, f, dialect=csv.excel, encoding="utf-8", **kwds):
# Redirect output to a queue
self.queue = cStringIO.StringIO()
self.writer = csv.writer(self.queue, dialect=dialect, **kwds)
self.stream = f
self.encoder = codecs.getincrementalencoder(encoding)()
def writerow(self, row):
self.writer.writerow([unicode(s).encode("utf-8") for s in row])
# Fetch UTF-8 output from the queue ...
data = self.queue.getvalue()
data = data.decode("utf-8")
# ... and reencode it into the target encoding
data = self.encoder.encode(data)
# write to the target stream
self.stream.write(data)
# empty queue
self.queue.truncate(0)
def writerows(self, rows):
for row in rows:
self.writerow(row)
conn = sqlite3.connect('yourdb.sqlite')
c = conn.cursor()
c.execute('select * from yourtable')
writer = UnicodeWriter(open("export.csv", "wb"))
writer.writerows(c)
Espero que ayude!
Editar: Si desea que las cabeceras de la CSV, la forma más rápida es añadir manualmente otra fila antes de escribir los datos en la base de datos, por ejemplo:
# Select whichever rows you want in whatever order you like
c.execute('select id, forename, surname, email from contacts')
writer = UnicodeWriter(open("export.csv", "wb"))
# Make sure the list of column headers you pass in are in the same order as your SELECT
writer.writerow(["ID", "Forename", "Surname", "Email"])
writer.writerows(c)
Edición 2: A la salida columnas de tubos separados, registran una costumbre CSV dialecto y pasan que en la grabadora, así:
csv.register_dialect('pipeseparated', delimiter = '|')
writer = UnicodeWriter(open("export.csv", "wb"), dialect='pipeseparated')
Aquí es a list of the various formatting parameters puede utilizar con un dialecto personalizado.
Sí, esto es útil. Pero todos los datos están en una columna. Por ejemplo, tenía 4 columnas y 12 filas en la base de datos (sqlite3). ¿Es posible dividirla? ¿Quizás crear una tabla en CSV con encabezados? Thx – Risino
No entiendo muy bien: este código ya muestra las columnas seleccionadas separadas por comas (o al menos lo hace cuando lo ejecuto). ¿Puedes publicar una fila de ejemplo del archivo CSV que has generado? –
Sí, tienes razón. Sí, tienes razón. Este código está separado por comas: ID, Nombre, Apellidos, Correo electrónico, pero si es posible, quiero separarlo por columnas. Por ejemplo: | ID | Nombre | Apellido | Correo electrónico | – Risino
Yes.Read aquí sqlitebrowser
- de importación y exportación registros como texto
- de importación y exportación de tablas/archivos CSV a
- importación y exportación de bases de datos desde/a archivos de volcado de SQL
Programas externos: consulte la documentación para sqlite3 para obtener más información. Puedes hacerlo desde shell/línea de comando.
Sobre la marcha: csv module le ayudará a manejar el formato de archivo CSV correctamente
- 1. Silverlight DataGrid: exportar a excel o csv
- 2. Cómo exportar una tabla al formato csv o excel
- 3. Exportar a csv - consulta Linq
- 4. Opción Redis-cli --csv (exportar a csv)
- 5. Exportar tabla desde Amazon RDS a un archivo csv
- 6. ¿Cómo migrar un archivo CSV a Sqlite3 (o MySQL)? - Python
- 7. Exportar a CSV a través de PHP
- 8. Exportar HIVE a un CSV
- 9. Exportar mi Google Chart (tabla) de datos a excel o csv
- 10. ¿Es posible simular el cursor sqlite3 en Android cuando no existe db o tabla?
- 11. Tabla cruzada en Sqlite3
- 12. sqlite3 y fmdb anidados FMResultSet es posible?
- 13. ¿Existe un serializador CSV? (similar a XmlSerializer)
- 14. Exportar datos a CSV en rieles
- 15. Exportar datos de qtablewidget a csv
- 16. Cómo exportar la entidad Core Data a un archivo CSV
- 17. Exportar/Importar CSV con PHPExcel
- 18. Cómo exportar la consulta de SQL Server 2005 a CSV
- 19. Exportar tabla HTML a Excel
- 20. exportar resultado de la consulta SQL a un csv o sobresalir
- 21. ¿Es posible usar OpenCV o una biblioteca similar en Javascript?
- 22. Django admin - Exportar como CSV
- 23. Exportar tabla HTML a excel - usando jQuery o Java
- 24. sqlite3: crear tabla sin columnas
- 25. jQuery Tabla a exportación CSV
- 26. ¿Es posible exportar desde Fossil SCM a otros DVCS?
- 27. Javascript o exportación Flash a CSV/Excel
- 28. Oracle cómo exportar consulta a un archivo de texto/csv
- 29. Cómo puedo exportar artículos a archivos csv por artículo
- 30. Exportar tabla HTML a Excel utilizando ASP.NET
Por cierto, mira esta publicación (se trata de la importación desde Python, pero puede ser útil http://stackoverflow.com/questions/2887878/importing-a-csv-file-into-a-sqlite3-database-table -using-python – cristian