![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Jr. Member
![]() Registriert seit: 05.05.2000
Beiträge: 96
|
![]() Ich habe eine Access-Datenbank mit einem Index "NrTyp" der die Felder "Nr" und "Typ" inkludiert.
Nun möchte ich per SEEK in VB6 eine Suche machen. Wie muss der Suchstring aussehen, damit ein Datensatz gefunden wird? Beispiel: Im Feld "Nr" steht als Wert "a826" Im Feld "Typ" steht als Wert "MKK" Wenn ich nun sage DATA1.RECORDSET.SEEK "=","a826MKK" wird bei mir der Datensatz nicht gefunden! Wie geht es richtig? PS: Welches ist das beste VB6 Forum? (egal ob deutsch oder englisch) Geändert von pw (20.01.2009 um 13:32 Uhr). |
![]() |
![]() |
![]() |
#2 |
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
![]() Hi!
Aus einer einzigen Zeile Code kann man keine Aussage zu deinem Problem machen. Der Schlüssel schaut aber nicht gut aus. Klar sind für mich nur 2 Dinge, die dir aber nicht gefallen werden. - Du verwendest DAO. Das ist noch kein Fehler, aber doch diskussionswürdig. - Du verwendest ein DataControl. Das würde ich als grundsätzlichen Fehler bewerten. Vielleicht solltest du dein gesamtes Konzept neu überdenken. PS: Das "beste VB6 Forum" gibt es nicht. Es gibt aber einige Gute. mfg WB |
![]() |
![]() |
![]() |
#3 |
Jr. Member
![]() Registriert seit: 05.05.2000
Beiträge: 96
|
![]() > Aus einer einzigen Zeile Code kann man keine Aussage zu deinem Problem machen.
> Der Schlüssel schaut aber nicht gut aus. Warum? > Klar sind für mich nur 2 Dinge, die dir aber nicht gefallen werden. > - Du verwendest DAO. Das ist noch kein Fehler, aber doch diskussionswürdig. Ich weiss. ![]() > - Du verwendest ein DataControl. Das würde ich als grundsätzlichen Fehler bewerten. Eigentlich nicht, ich dachte es wäre besser zu erklären. Der Code: Global Datenbank As Database Global Fotos As Recordset mdbdatei = App.Path + IIf(Right(App.Path, 1) = "\", "", "\") + "FOTO.MDB" Set Datenbank = OpenDatabase(mdbdatei) Set Fotos = Datenbank.OpenRecordset("Fotos") Fotos.Index = "IndexNr" ' der Index setzt sich zusammen aus den Feldern "Typ" und "Nr" Fotos.MoveLast Fotos.Seek "=", "D108-33" ' führt NICHT zum Erfolg, wenn im Feld "Typ" der Wert "D" steht und im Feld "Nr" der Wert "108-33". WARUM? Wie geht es richtig? > PS: Das "beste VB6 Forum" gibt es nicht. Es gibt aber einige Gute. Die da wären? Danke PW |
![]() |
![]() |
![]() |
#4 |
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
![]() Hi!
Ohne DC ist wesentlich besser ![]() Ich gehe jetzt einmal davon aus, daß keine versteckten Fehler existieren. Kann ich hier nicht prüfen. Fotos.Seek "=", "D", "108-33" ' sollte zum Erfolg führen. Fotos.MoveLast ' sollte hier nicht notwendig sein. PS: Such dir welche aus: http://www.vbarchiv.net/vblinks/index.php |
![]() |
![]() |
![]() |
#5 |
Jr. Member
![]() Registriert seit: 05.05.2000
Beiträge: 96
|
![]() |
![]() |
![]() |
![]() |
#6 |
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
![]() Hi!
Keine Ursache. VB6 und Datenbanken ist mein Spezialgebiet. Allerdings habe ich seit Jahren kein DAO mehr verwendet. Du solltest den Wechsel zu ADO zumindest in Erwägung ziehen. mfg WB |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|