Importation de fichier CSV dans la Base de données Sqlite3 en ligne de commande ou via un Fichier de commandes
Je tiens à vous renseigner sur l'opportunité est là de toute façon pour importer un fichier csv qui contient la sortie de mon select dans SQLite3 dans une nouvelle base de données?
Suivantes sont les codes que j'ai fait jusqu'à présent:
sqlite3.exe -csv logsql.sqlite "SELECT local_port AS port, COUNT(local_port) AS hitcount FROM connections WHERE connection_type = 'accept' GROUP BY local_port ORDER BY hitcount DESC;" > output.csv
sqlite3.exe -csv test.sqlite "CREATE TABLE test (name varchar(255) not null, blah varchar(255) not null);" .import ./output.csv test
comme vous pouvez le voir mon premier code était de vider les requêtes effectuées.
la deuxième ligne de code que j'essaie de faire une nouvelle base de données et attemptign pour importer le fichier csv dans la table "test"
merci pour toute aide faite à l'avance! 😀
La grande question que je dois poser ici est: pourquoi avez-vous besoin de faire cela? Est-ce une opération ponctuelle, cela fait-il partie d'un programme?
oui, c'est une partie d'un programme. j'ai l'intention d'exécuter le script de commandes pour générer mon propre tableau de réduire le temps de traitement pour la présentation graphique dans mon programme php
oui, c'est une partie d'un programme. j'ai l'intention d'exécuter le script de commandes pour générer mon propre tableau de réduire le temps de traitement pour la présentation graphique dans mon programme php
OriginalL'auteur misctp asdas | 2011-08-08
Vous devez vous connecter pour publier un commentaire.
Je recommanderais de faire votre importation à partir d'un fichier plat, ce qui permettra de créer votre schéma de suivi avec l'importation:
Comme suit:
Où le contenu de l'importation.sql est:
Une autre approche qui vous ne pourriez pas avoir considéré est l' JOINDRE de commande. Vous pouvez joindre une nouvelle base de données, créer la table en elle, et les importations à sa table, de sorte que vous n'avez pas d'exporter au format CSV, puis ré. Il peut être à partir d'un CREATE TABLE ... QUE CHOISIR ... requête ou tout simplement un INSERT.
Donc, fondamentalement, vous feriez exécuter (à partir de votre Page PHP):
Ou:
Veuillez voir modifier.
merci beaucoup pour la réponse rapide. Ils reviennent avec un message d'erreur disant Erreur: 2 colonnes de données, mais à 1. Est-ce parce que mon 1er code génère une seule colonne? J'ai ouvert le fichier csv et remarqué 2 colonnes remplies.
Désolé, j'ai oublié que .l'importation et l'-csv créer différents séparateurs. Veuillez voir mes modifications.
Je n'arrive pas à exécuter un script à partir d'un fichier par rapport à une base de données sqlite3 de cette manière - il se plaint
Error: incomplete SQL: .separator , .import output.csv items
OriginalL'auteur MPelletier
Pour les gros fichiers CSV, il peut être plus efficace d'utiliser le
sqlite3
shell.import
de commande, plutôt que d'analyser le fichier en Python et insérer des lignes avecsqlite3
module. Il peut être fait paros.system
(sur Linux, Unix ou Mac OS X, ou Cygwin sous Windows):OriginalL'auteur piokuc
Vous pouvez faire beaucoup de choses avec le SQLite interpréteur de commandes et commutateurs de ligne de commande...
... mais je vous conseille fortement de trouver un SQLite-connaissance en langage de script qui fonctionne sur Windows et que vous vous sentez à l'aise avec.
Perl et Python sont deux excellents choix. Les deux charge SqlLite, les deux sont disponibles gratuitement pour Windows.
Et à la fois de gérer ce - et de nombreux autres types de tâches.
OriginalL'auteur paulsm4
Un seul fichier de commande pour importer un fichier via le bash qui a fonctionné pour moi:
Espère que ça aide.
OriginalL'auteur Pauli
Je nedded pour importer plusieurs fichiers csv, donc j'ai écrit le script python ci qui fait le travail de création et chargement de tables sqlite à partir de fichiers csv, en utilisant la première ligne du csv que les noms de champ de la table:
Pour l'importation d'une grande quantité de données, vous devez mettre en œuvre des opérations.
hth
OriginalL'auteur Bandiera