Insérer une grande taille de données à partir de txt, le file csv à la table SQL Server avec quelques lignes non valides

J'ai besoin d'insert des données du file de données dans une table SQL Server. Le file de données peut contenir des milliers de lignes mais il est possible que certaines lignes du file soient erronées (par BIRTH_DATE , la valeur de la colonne BIRTH_DATE est incorrecte ou la string ne peut pas être convertie en int). Je peux utiliser la fonctionnalité d'insertion en bloc, mais comme certaines lignes du file ne sont pas valides, aucune ligne ne sera insérée à cause de quelques lignes invalides. Je voudrais ignorer les mauvaises lignes et, idéalement, get le numéro de ligne de chaque ligne invalide. Je voudrais faire avec la plus haute performance. Des idées?

Merci d'avance

-Petro

Je gère habituellement ce genre de situation de deux façons:

  1. Copiez en bloc datatables dans une table de transfert. La table de VARCHAR peut être toutes les colonnes VARCHAR ou une longue colonne VARCHAR pour chaque ligne, en fonction du format et de la qualité des données. Une fois dans la table de mise en scène, je peux ensuite faire des vérifications et extraire toutes les lignes avec des problèmes à traiter plus tard avec une intervention humaine.

  2. SSIS comprend de bonnes fonctionnalités pour redirect les lignes avec des erreurs. Vérifiez la documentation appropriée dans MSDN en ligne et si vous avez des problèmes spécifiques, vous pouvez créer une nouvelle question ici et je suis sûr que les gens peuvent vous aider à le faire.