vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Datenbanken
Listview + SQL-Abfragen 
Autor: Darth
Datum: 17.11.04 21:02

Hallo,

ich habe eine Access-DB mit im Moment 2 Datensätzen

Band:
Pearl Jam
M-M.Westernhagen

Album:
vs.
Keine Zeit (CD2)

Ich habe nun ein Suchformular gebaut, welches nach dem Namen des Künstlers/der Band sucht, mittels * gehen auch Buchstaben.

Das Suchergebniss wandert in ein Recordset, welches ich danach in eine Listview eintragen möchte.

Hier einmal der Code
Private Sub Suchen()
 
    If Suchtext = "" Then
        MsgBox "Bitte geben Sie einen" & vbNewLine & "Suchbegriff ein!", _
          vbExclamation, "Fehler in der Sucheanfrage"
        Exit Sub
    End If
 
    'Datenbank öffnen
    dbFile = App.Path + "\db_musikcds.mdb"
    Set Db = Workspaces(0).OpenDatabase(dbFile, True, True)
 
    'Aktuellen Zeiger innerhalb der Datenbank merken
    GetBookmark Tabelle, CurRec, CurIdx
 
    If optSearch1(0) = True Then
        SetBookmark Tabelle, CurRec, CurIdx
        Set Tabelle = Db.OpenRecordset("tbl_bands")
            Tabelle.Index = "band_name"
            SQL = "select * from tbl_bands, tbl_albums where band_name like '*" _
              & Suchtext & "*'"
            Set rs = Db.OpenRecordset(SQL)
            If rs.RecordCount > 0 Then
                'Suchergebniss(e) in der Listview anzeigen
                frmShow.lvwBand.ListItems.Clear
                rs.MoveFirst
                Do
                    Set lstItem = frmShow.lvwBand.ListItems.Add(, , rs( _
                      "band_name"))
                    lstItem.SubItems(1) = rs("album_title")
                    rs.MoveNext
                Loop Until rs.EOF
            Else
                MsgBox ("Die gesuchte Band konnte nicht in der" & vbNewLine & _
                  "Datenbank gefunden werden"), vbInformation, "Kein Ergebniss"
                txtSearchText = ""
                'Zeiger auf Ausgangswert setzen
                SetBookmark Tabelle, CurRec, CurIdx
            End If
    End If
 
    If optSearch1(1) = True Then
        MsgBox ("Nix is")
    End If
 
    If optSearch1(2) = True Then
        MsgBox ("Nix is2")
    End If
 
    'Datenbank schließen
    Tabelle.Close
    Db.Close
    Set Tabelle = Nothing
    Set Db = Nothing
End Sub
Wenn ich diese Anfrage nun ausführe, so wird das Listview auch gefüllt, allerdings mit dem Künstler und BEIDEN vorhandenen Alben...
Sprich irgendwo muss ein Fehler in der SQL-Abfrage sein, nur leider entdeckte ich den nicht

Suche ich zB nach Pearl Jam, so erscheint das in der Liste:

Pearl Jam - Keine Zeit (CD2)
Pearl Jam - vs.

Es wird also das erste existente Album ausgegeben, danach das zweite usw...

Wo könnte mein(e) Fehler liegen?
Michael
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Listview + SQL-Abfragen1.153Darth17.11.04 21:02
Re: Listview + SQL-Abfragen769devnull18.11.04 10:00
Re: Listview + SQL-Abfragen639Darth18.11.04 11:54

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel