daten inserten in DB



  • Hallo,
    ich wollte mal fragen, ob es noch andere Möglichkeiten gibt Daten in eine Datenbank zu inserten, als über den mir bekannten Weg

    OleDbCommand com = new OleDbCommand(insertQuery, connection)
     com.executeNonQuery()
    

    Ich frage, weil ich mit einem Arbeitskollegen ein Programm entwickelt habe, welches Daten aus einem WebService bezieht und die dann in eine Datenbank einpflegen. Dabei sind 2 Versionen entstanden. Seine Version braucht bei gleicher Datenmenge 12 Minuten und ich liege knapp bei einer Stunde. Also zum Test haben wir beiden Versionen nacheinander auf ein und dem gleichen PC ausgeführt.
    Als Tipp hat er mir RecordSets gesagt.

    Einer vielleicht eine Idee ?



  • Via DataSet geht das z.B. noch über .Update()
    Ansonsten geht es je nach Datenbank schneller wenn man mehrere Inserts in eine Transaktion packt (hat teilweise auch den umgekehrten Effekt)
    Ein DbCommand-Objekt kann man normalerweise auch mehrfach benutzen.



  • Erstmal danke, werd es mir mal angucken. Und das mit dem Command war nur exemplarisch 😉 Benutze schon immer den gleichen Command, wechsel eben dann nur immer den Query aus



  • wenn die Queries gleich aussehen: Parameter nutzen und nur die abändern.

    (Wobei die DataSet/DataTable Variante meist deutlich schneller läuft!)


Anmelden zum Antworten