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 :

Convertir rapidement un DBF en SQLLite


Sujet :

C#

  1. #1
    Candidat au Club
    Inscrit en
    Juillet 2007
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 1
    Points : 2
    Points
    2
    Par défaut Convertir rapidement un DBF en SQLLite
    Bonjour,

    Je recherche un moyen rapide pour convertir une table DBF en SQLLite.
    De csv en SQLLite j'utilise le CSVReader de LumenWoks, l'ensemble est ultra rapide avec les requêtes paramétrée.
    J'ai essayé de même avec DBF vers SQLLite comme ceci :

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    cnn.Open();
    //Preparing parameters and insert query
    //<--
    String[] paramFields = new string[headers.Length];
    for (int hdrCpt = 0; hdrCpt < headers.Length; hdrCpt++)
    {
    paramFields[hdrCpt] = "?";
    }
    string sqlInsert = String.Format(@"INSERT INTO {0} ([{1}]) VALUES ({2})", tableName.Replace(fl.Extension, ""), myFields, string.Join(",", paramFields));
    SQLiteCommand cmdInsert = new SQLiteCommand();
    cmdInsert.CommandText = sqlInsert;
    cmdInsert.Connection = cnn;
    //-->
     
    //Création du tableau de paramètres
    //<--
    SQLiteParameter[] Params = new SQLiteParameter[headers.Length];
    for (int hdrCpt = 0; hdrCpt < headers.Length; hdrCpt++)
    {
    Params[hdrCpt] = cmdInsert.CreateParameter();
    cmdInsert.Parameters.Add(Params[hdrCpt]);
    }
    //-->
     
     
     
     
    #region scann record
    int nbErr = 0;
    string sqlInsertion = "";
     
    OleDbDataAdapter adapter2 = new OleDbDataAdapter(sqlInsertion, cnn);
     
    foreach (DataRow row in dbfContent.Rows)
    {
    string[] inputRow = new string[dbfContent.Rows.Count];
    try
    {
     
     
    for (int hdrCpt = 0; hdrCpt < headers.Length; hdrCpt++)
    {
    Params[hdrCpt].Value = row[hdrCpt];
    }
     
    cmdInsert.ExecuteNonQuery();
    ...

    Mais c'est terriblement lents.
    Auriez vous une idée?
    Je pensait à truc du style dataadapter.update() mais les idées précises me manquent.

    Merci de votre aide.

    Cordialement,

    GillesM

  2. #2
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    Salut

    C'est beaucoup plus rapide de generer des requetes SQL en string avec les valeurs recuperees depuis la base source, pour les reinjecter en SQL dans la base de destination

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

Discussions similaires

  1. convertir un fichier .DBF à un fichier txt TYPE sdf
    Par ilhemo dans le forum Bases de données
    Réponses: 2
    Dernier message: 17/12/2010, 23h22
  2. Convertir (rapidement) un DataTable en string
    Par vladvad dans le forum Windows Forms
    Réponses: 4
    Dernier message: 11/02/2010, 02h23
  3. convertir un fichier dbf en fichier paradox 'db"
    Par nour40 dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/05/2009, 22h33
  4. vb6 Convertir une fichier Excel en DBF (urgent)
    Par mqsi dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 12/01/2007, 15h30
  5. [script]Convertir une BD .dbf en MySql
    Par ozzmax dans le forum Outils
    Réponses: 5
    Dernier message: 05/05/2006, 16h00

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