Query ausführen, dauert lange! Warum??

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von petaod.

    Query ausführen, dauert lange! Warum??

    Hallo liebe Community,

    kann mir jemand erklären, warum mein Query sehr sehr sehr sehr langsam ist?

    VB.NET-Quellcode

    1. connect.ConnectionString = "Data Source=db.db;"
    2. connect.Open()
    3. command = connect.CreateCommand
    4. command.Connection = connect
    5. 'command.CommandText = "SELECT * FROM `liste_cf` LEFT JOIN `liste_xny` ON `liste_cf`.`xon_Number`= `liste_xxny`.`SxN_No` WHERE `liste_xxxy`.`Sxx_No` IS NULL;"
    6. Dim SQLreader2 As SQLiteDataReader = command.ExecuteReader()
    7. While SQLreader2.Read()
    8. xxx += SQLreader2(8).ToString()
    9. xxx += SQLreader2(13).ToString()
    10. Invoke(Sub() Me.xx.Text = xxx)
    11. Invoke(Sub() Me.xx.Text = xxxy)
    12. Invoke(Sub() Me.lvwAddItem(price_list, SQLreader2(1).ToString(), SQLreader2(2).ToString(), SQLreader2(5).ToString(), SQLreader2(3).ToString(), SQLreader2(7).ToString(), SQLreader2(8).ToString() + " €", SQLreader2(13).ToString() + " €", SQLreader2(10).ToString()))
    13. End While
    14. command.Dispose()


    Wieso ist das so lahm? Ich habe den Query vor 10 Min. gestartet, Listview ist immer noch leer! ;( ;(
    Es muss ja kein Unique Key sein.
    Einen Index kannst du auch auf nicht eindeutige Felder legen.

    Allerdings bezweifle ich, dass dein Datenmodell deinen Wunschvorstellungen stand hält, wenn du Joins mit nicht eindeutigen Schlüsselfeldern einbaust.

    Vielleicht solltest du tatsächlich erst in die Grundlagen der Datenmodellierung einsteigen und zumindest die ersten vier Normalformen verstehen lernen.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --