Comment Bulk Insert csv avec des guillemets doubles autour de toutes les valeurs?
Je suis en train d'insérer une .fichier csv dans SQL Server 2008 R2.
L' .csv est à+de 300 MO à partir de http://ipinfodb.com/ip_database.php Complète
(Ville), 4.0 M records.
Voici le top 5 des lignes, 1re ligne, = - têtes de colonne:
"ip_start";"country_code";"country_name";"region_code";"region_name";"city";"zipcode";"latitude";"longitude";"metrocode"
"0";"RD";"Reserved";;;;;"0";"0";
"16777216";"AU";"Australia";;;;;"-27";"133";
"17367040";"MY";"Malaysia";;;;;"2.5";"112.5";
"17435136";"AU";"Australia";;;;;"-27";"133";
J'ai essayé d'Importer et d'Exporter des Données, et d'INSERTION en bloc, mais je n'ai pas été capable de les importer correctement encore.
Je recours à l'utilisation de la pca? peut-il manipuler le décapage de la ""
? comment?
Merci beaucoup.
...ou vous pouvez utiliser une regex pour remplacer à dépouiller les guillemets...
ce fichier est trop grande, va prendre une éternité à sortir la bande
Si vous voulez aller dans cette voie, vous pouvez l'ouvrir dans un éditeur de texte comme Textpad ou Ultraedit et d'effectuer un rechercher/remplacer sur des guillemets pour les remplacer par une chaîne vide. J'ai travaillé avec 180MO fichiers à l'aide de ces services et il était indolore - vous pourriez donner un coup de feu.
ce fichier est trop grande, va prendre une éternité à sortir la bande
Si vous voulez aller dans cette voie, vous pouvez l'ouvrir dans un éditeur de texte comme Textpad ou Ultraedit et d'effectuer un rechercher/remplacer sur des guillemets pour les remplacer par une chaîne vide. J'ai travaillé avec 180MO fichiers à l'aide de ces services et il était indolore - vous pourriez donner un coup de feu.
OriginalL'auteur Henry | 2010-09-21
Vous devez vous connecter pour publier un commentaire.
L'ai, oublié de le mettre Qualificateur de Texte comme
"
:OriginalL'auteur Henry
Vos données semble assez incohérent puisque les valeurs NULL ne sont pas aussi effectuer un devis enceinte.
Je crois que vous pouvez créer un format de fichier pour personnaliser votre fichier csv et ses terminaisons dans SQL SERVER.
Voir plus ici:
http://lanestechblog.blogspot.com/2008/08/sql-server-bulk-insert-using-format.html
OriginalL'auteur el_stack
Est-ce une simple importation ou êtes-vous désireux de planifier une importation récurrente? Si c'est une tâche de temps, vous devriez être en mesure d'utiliser l'Assistant Importation et Exportation. Le qualificateur de texte sera le guillemet ("), assurez-vous de sélectionner les noms de colonne dans la première ligne de données, et vous aurez envie de montrer que le champ séparateur est le point-virgule (;).
Je ne suis pas certain que le fichier est correctement formaté - le dernier point-virgule à la suite de chacune des lignes de données pourrait être un problème. Si vous appuyez sur l'une des erreurs, il suffit d'ajouter une nouvelle colonne d'en-tête du fichier.
EDIT: je viens de faire un test rapide, les points-virgules à la fin seront traités comme faisant partie de la valeur finale de la ligne. Je vous suggère d'ajouter une ;"tempheader" à la fin de votre en-tête (première) ligne - qui sera la cause de SQL pour traiter le dernier point-virgule comme séparateur et vous pouvez supprimer cette colonne supplémentaire une fois l'importation terminée.
OriginalL'auteur Mayo
En C#, vous pouvez utiliser ce code, qui travaillent pour moi
OriginalL'auteur Vishal sen