2010-07-19 4 views
2

Utilisation de l'outil de l'interface graphique MySQL Administrator J'ai exporté des tables de données extraites d'un fichier dump sql vers des fichiers csv. J'ai ensuite essayé d'importer ces fichiers CSV dans une base de données PostgreSQL en utilisant la commande postgres COPY. J'ai essayé d'entrerImportation de fichier CSV dans PostgreSQL

COPY articles FROM '[insert .csv dir here]' DELIMITERS ',' CSV; 

et également la même commande sans la partie délimiteurs.

je reçois une erreur disant

ERROR: invalid input syntax for integer: "id" 
CONTEXT: COPY articles, line 1, column id: "id" 

En conclusion ma question est ce que quelques réflexions et des solutions à ce problème? Cela pourrait-il être quelque chose à voir avec la façon dont j'ai créé les fichiers csv? ou ai-je fait une erreur de débutant ailleurs?

+0

fichier CSV vous a obtenu une ligne « title » en haut? –

+0

Je me demandais juste pourquoi vous avez étiqueté votre question en tant que python? (Est-ce que je manque quelque chose de vraiment évident?) – brice

+0

Écris des scripts pour peupler la table, en lisant ton fichier CSV. – thegeek

Répondre

4

Si vous avez des colonnes d'en-tête juste ajouter le qualificatif d'en-tête à l'instruction de copie selon documentation pour ignorer cette ligne http://www.postgresql.org/docs/8.4/static/sql-copy.html

+0

COPIER les articles FROM '[insérer .csv dir ici]' CSV WITH HEADER; – rfusca

+0

Ah ouais génial. Merci beaucoup cela a bien fonctionné. lol bien qu'il ait produit beaucoup d'espace blanc non désiré dans les données mises dans la table, mais je suppose que c'est un nouveau problème que je dois essayer de résoudre. – user395558

+0

Oh, ne tenez pas compte de ce que j'ai dit sur le post-problème rencontré. Je ne me suis pas rendu compte que les données sont réellement écrasées et affichent wierdly en le regardant dans le terminal. – user395558

Questions connexes