vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

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

Suche Visual-Basic Code
Re: Suche per SQL 
Autor: Easyrider
Datum: 02.12.03 08:17

Hallo Reinhard,

tut mir echt leid, aber das will nicht so wie es sollte. Ich hab zur Probe 4 Datensätze eingefügt ( "Haushalt, Hochhaus, Weinberg, Anfänger") und hab die SQL-Anweisung genau so abgeschrieben wie sie dort gestanden ist. Aber wenn ich nach "Haus" suche listet es mir wieder alle Datensätze auf....



Langsam bin ich am Verzweifeln. Das Programm sollte Freitag fertig werden und ich schaffs nicht...

P.S.: Kopf ist offen und wartet auf input!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Suche per SQL 
Autor: Easyrider
Datum: 01.12.03 14:04

Servus Leute,

ich hab hier ne Buchdatenbank, wo ich eine Suche implementieren muss. Komm aber ums verrecken (sry) nicht weiter! Bin wahrscheinlich zu blöd dafür. Hier der Code:

Private Sub cmdSuche_Click()

Dim db As Dao.Database
Dim rs As Recordset
Dim strDaten As String

strDaten = Me.txtSuche.Text
Set db = OpenDatabase("C:\Datenbanken\Bibliothekendatenbank\Bibliothek.mdb")
Set rs = db.OpenRecordset("SELECT Buchtitel FROM tblBücher WHERE Buchtitel LIKE '%strDaten%'")
If rs.NoMatch = True Then
Exit Sub
End If
Me.griSuche.Visible = True
rs.Close
db.Close

end sub

strDaten = Der Filter, nachdem gesucht werden soll. Wieso haut das nicht hin?

Bitte um Antwort, ich bin doch nur ein kleiner Azubi...
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Suche per SQL 
Autor: RHS
Datum: 01.12.03 15:15

Hallo Azubi

Set rs=db.OpenRecordset("SELECT Buchtitel FROM tblBücher 
WHERE Buchtitel LIKE '%" & strDaten & "%'")
sollte hinhauen.

- Reinhard -
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Suche per SQL 
Autor: Easyrider
Datum: 01.12.03 16:54

hallo Reinhard,

erstmal danke für die schnelle Antwort. sry, aber entweder ich bin zu dumm das zu checken oder ich bin zu dumm das zu checken.
Ich hab jetzt mal 3 Datensätze reingeschrieben. (Datensatz 1, Visual Basic 6, Microsoft C++). Egal nach welchem Buchstaben oder Zeichen ich suche, es kommen immer alle Datensätze.
Axo ja, und wie würde es gehen, wenn ich zum Beispiel das Wort Hochhaus habe und ich alle Datensätze auswählen möchte die "haus" beinhalten?


Kann mir den niemand den ganzen scheiss ins Hirn füttern?
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Suche per SQL 
Autor: RHS
Datum: 01.12.03 17:22

Hallo Stefan,

mein Beispiel müsste gehen ...

Wenn Du als Suchbegriff "haus" eingibst, wird "Hochhaus" oder auch "Haustür" im Feld Buchtitel gefunden (ähnlich wie DIR *haus*.* im DOS-Fenster).

>> Kann mir den niemand den ganzen scheiss ins Hirn füttern?

Kein Problem, klapp schon mal Deinen Kopf auf. Ich leg dann die SQL-CD ein ... .

- Reinhard -
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Suche per SQL 
Autor: Easyrider
Datum: 02.12.03 10:08

Hallo nochmal,

ich hab jetzt das data-object auf Tabelle anstatt dynaset umgestellt. wenn ich jetzt suche bekomm ich gar keinen Datensatz zu sehen....

mfg
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Suche per SQL 
Autor: RHS
Datum: 02.12.03 10:09

Hallo Stefan,

>> Aber wenn ich nach "Haus" suche listet es mir wieder alle Datensätze auf....

ich bin mir nicht sicher, weil ich das aus Deinem Code nicht erkennen kann, aber kann es sein, das Deinem Grid ein Recordset zu Grunde liegt, das alle DS beinhaltet? Normalerweise müsstest Du doch nach IF NOT rs.NoMatch ... das (Such)-Recordset dem Grid zuweisen ...

- Reinhard -
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Suche per SQL 
Autor: Ne kölsche Jung
Datum: 06.12.03 20:08

Hallo Azubi

Jetzt keine Ausreden mehr. Dieser Code ist geprüft und ist mit ADO und mit einem
Data-Object gelaufen

Hier mal die 3 Möglichkeiten mit denen Du einen Teilstring suchen kannst.
Zu suchen ist die Zeichenfolge 're'

1. Sucht nur am Ende eines Stings die zu suchene Zeichenfolge
"SELECT Name FROM Publishers WHERE Name LIKE '*" & suche & "' "
Z.B. Zigarre

2. Sucht nur am Anfang eines Stings die zu suchene Zeichenfolge
"SELECT Name FROM Publishers WHERE Name LIKE '" & suche & "*' "
Z.B Reinigung

2. Sucht in einem ganzen Stings die zu suchene Zeichenfolge.
"SELECT Name FROM Publishers WHERE Name LIKE '*" & suche & "*' "
Z.B Reinigung oder Zigarre oder Bereitschaft

Wenn Du jetzt nur zwei Buchstaben suchst, werden natürlich viele Buchtitel gefunden.

So, jetzt zum VB-Code. Kannst ihn ja mal Testen. Nur den richtigen Pfad eingeben.

MfG Jürgen

Private Sub Form_Load()
    Dim db As Database
    Dim rs As Recordset
    Dim i As Integer
    Dim suche As String
 
    Show
    suche = "Re"
 
    Set db = Workspaces(0).OpenDatabase("C:\Programme\Microsoft Visual" & _
      "Studio\VB98\BIBLIO.MDB")
    Set rs = db.OpenRecordset("SELECT Name FROM Publishers WHERE Name LIKE '*" _
    & suche & "*' ")
 
    With rs
        If .RecordCount > 0 Then
            .MoveLast
            .MoveFirst
        End If
 
        For i = 1 To .RecordCount
            Me.Print !Name
            .MoveNext
        Next i
    End With
End Sub
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Suche per SQL 
Autor: Ne kölsche Jung
Datum: 06.12.03 20:12

Nochmal Jürgen

Anstatt FOR NEXT nimmst Du

        While Not .EOF
            Me.Print !Name
            .MoveNext
        Wend
Sieht sauberer aus.

Jürgen
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Suche per SQL 
Autor: Easyrider
Datum: 08.12.03 12:42

Danke ihr zwei. Funktioniert jetzt.

mfg Easy
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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-2024 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