tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
550
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Joi1981 Joi1981 ist offline Mitglied Bronze
    Registriert seit
    Oct 2007
    Beiträge
    45
    Hallo Leute,

    ich hab da mal ne kurze Frage an Euch.

    In meiner Anwendung verwende ich das ADO Objekt zusammen mit einem DataGrid.

    Ich habe in der Access-Datenbank ein Tabelle "Adressen" die Namen, Strasse usw enthält.

    Wie ich sehr oft gelesen habe, selektiert man z.B alle Namen die mit "A" beginnen wie folgt:

    SELECT * FROM Adressen WHERE Name Like 'A*'

    - kling einleutend -

    Allerdings bekomme ich mit diesem SQL-String 0 RecordCounts.

    Erst wenn ich * durch % ersetze, also:

    SELECT * FROM Adressen WHERE Name Like 'A%'

    dann bekomme ich alle Namen die mit "A" beginnen.


    Wie kann das sein? - Was hat es mit dem * auf sich?


    Verwende ich innerhab eines bereits geladenen RecordSets die Filtermethode in Verbindung mit dem * funktioniert es:

    .... .FindItem("A" & "*", 1)


    Weiss jemand warum ich mit dem * als Wildcard nicht das gewünschte Ergebnis erhalte?

    Danke Euch!

    Gruß
    Jochen
     

  2. #2
    Avatar von DrSoong
    DrSoong DrSoong ist offline Iss was, Doc!
    tutorials.de Premium-User
    Registriert seit
    Jul 2003
    Ort
    Dem Zentrum meiner Welt
    Beiträge
    1.836
    Blog-Einträge
    85
    Die Antwort ist ganz einfach, in Datenbanken gibt es den Stern (*) als Jokerzeichen nicht. Dort dient das Prozentzeichen (%) als Jokerzeichen, du musst die Anfragen halt dementsprechend schreiben.


    Der Doc!
     
    A: Hilfe, ich hab zwei Dateien hinzugefügt und nun sind die anderen weg
    B: Die Scrollbar da rechts ist dir schon mal aufgefallen?

  3. #3
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Ist DB-Abhängig.

    Oracle: %
    MS Access: *
    ....
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  4. #4
    Joi1981 Joi1981 ist offline Mitglied Bronze
    Registriert seit
    Oct 2007
    Beiträge
    45
    Hi Leute,
    Hallo yaslaw,

    danke für Eure schnellen Antworten.

    Ich verwende MS-Access als "Datenbank". Aber der Stern funktioniert wie gesagt nicht.
    Aber ist ja kein Problem, ich mach dann eben alles mit "%".

    Ich versteh nur nich warum in vielen vb-foren, z.B:
    http://www.vbarchiv.net/workshop/wor...vb-teil-3.html

    der Stern verwendet wird wenn es damit garnicht funktioniert?

    Danke Euch!!

    Liebe Grüße
    Jochen
     

  5. #5
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Hm... ist schon lange her als ich noch mit VB& und ADO hantierte.

    Access selber verwendet eigentlich *. (mindestens bis Version 2003, das ist die letzte mit der ich gearbeitet habe)

    Ev. übersetzt die DAO-Schnittstelle.
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  6. #6
    Joi1981 Joi1981 ist offline Mitglied Bronze
    Registriert seit
    Oct 2007
    Beiträge
    45
    Hi yaslaw,

    ja das könnte sein.

    Ich werde das heute Abend gleich mal testen.

    Evt. kennt er bei 3.51 den "*" und ab 4.00 das "%".

    Ich habe vor kurzem auf 4.00 umgestellt,
    deshalb konnte ich mich wohl erinnern früher mal mit "*" gearbeitet zu haben

    Ich werde dann berichten, wenn ich das getestet habe...

    Gruß
    Jochen
     

  7. #7
    Joi1981 Joi1981 ist offline Mitglied Bronze
    Registriert seit
    Oct 2007
    Beiträge
    45
    Hi Leute,

    hab das jetzt mal getestet... und soweit ich das beurteilen kann, scheint es in Verbindung mit MS-Access folgendermaßen geregelt zu sein:

    - verwendet man DAO 3.51 kann " * " als Wildcard verwendet werden.

    - verwendet man das neuere ADO mit Microsoft.Jet.OLEDB.4.0 od. 3.51 wird " * " als normales Zeichen gewertet, hier muss man " % " als Wildcard verwenden

    So, dann wäre das geklärt

    Vielen Dank für Euere Beiträge!

    Gruß
    Jochen
     

Ähnliche Themen

  1. Gesichter veraltern oder verjüngen mit Gimp oder einen anderen Programm
    Von thomas38 im Forum Sonstige Grafik-Programme
    Antworten: 10
    Letzter Beitrag: 07.12.09, 07:04
  2. anfänger braucht hilfe - composite oder shell oder beides?
    Von Tinobee im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 4
    Letzter Beitrag: 30.01.08, 23:36
  3. Inhalte Prüfen ohne $_GET oder $_POST oder gar $_REQUEST
    Von dg87 im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 21.11.07, 09:38
  4. Antworten: 7
    Letzter Beitrag: 13.12.05, 16:55

Stichworte