IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

SqlBulkCopy, retour d'erreur [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Juin 2010
    Messages : 210
    Par défaut SqlBulkCopy, retour d'erreur
    Bonjour,

    J'envoie un dataset dans une table SQL

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SqlBulkCopy bulkCopy = new SqlBulkCopy(MySqlConnexion);
    bulkCopy.DestinationTableName = MyTable.Name;
    bulkCopy.WriteToServer(MyDataSet.Tables[0]);
    Cela fonctionne très bien.

    Ma question porte sur mes quelques enregistrements qui ne fonctionne pas (problème de type entre autre).
    En fait j'ai un try/catch qui englobe tout ça et je voulais savoir ce qu'il se passe quand une ligne de donnée n'est pas inséré.
    1) l'insertion de mon datatable s’arrête ?
    2) l'insertion de la ligne est annulée ?
    3) l'insertion de la cell est annulée ?

    Comment puis-je savoir précisément qu'elle partie de mon DataSet n'as pas pu être inséré ?

    Merci.

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Le principal problème de SqlBulkCopy, c'est qu'il n'y a aucun mécanisme de gestion des exceptions, et de mémoire il me semble qu'il n'y a même pas de vérification des contraintes !

    Mais bon ça a l'avantage d'être rapide...

    Il faut donc que tu crées toi-même une mécanique pour pouvoir identifier les erreurs. Tu trouveras un bon exemple sur cet article : Retrieving failed records after an SqlBulkCopy exception.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Juin 2010
    Messages : 210
    Par défaut
    Bonjour,

    Merci de ton retour DotNetMatt.

    J'ai pu voir à l'aide de test que si il y'a la moindre erreur dans l'insertion, il stop tout.

    Je pensais en effet, en cas d'erreur, créer une seconde routine qui insert mes enregistrements de façon plus traditionnel.

    Merci pour le lien.

    Bonne journée.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] réponse vide alors que le champs existe dans la table, sans retour d'erreur
    Par ben_skywalker dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 15/02/2007, 14h20
  2. Contrôle de formulaire, test du "false" de retour sur erreur
    Par lodan dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/01/2007, 16h16
  3. Retour d'erreur STRERROR et malloc ?
    Par DrySs dans le forum C
    Réponses: 2
    Dernier message: 19/05/2006, 12h21
  4. [Mail] Envoyer un mail avec retour d'erreur
    Par phpaide dans le forum Langage
    Réponses: 1
    Dernier message: 19/04/2006, 15h49
  5. Retour d'erreur avec l'utilisation de la commande For en VBS
    Par genialk2000 dans le forum VBScript
    Réponses: 3
    Dernier message: 30/03/2005, 18h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo