rafke: datenbankabfrage

Moin Moin!

Ich frag in einer SQL-Datenbank nach einem bestimmten Wert

select name from personen where ort like 'Berlin'

nun meine Frage -

wie kann ich abfangen wenn die Abfrage keinen Wert liefert

rs.open query,conn
if rs = "" then ...

oder

if rs("name") = "" then ...

rs ist das recordset
query die abfrage und
conn die connection zur Datenbank

klappt nicht

ich hoffe das Stück Code reicht

  1. Moin!

    Frag doch einfach die entsprechende Eigenschaft Deines Recordsets ab.

    MFFG (Mit freundlich- friedfertigem Grinsen)

    fastix®

    --
    Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Development. Auch  für seriöse Agenturen.
  2. Halihallo rafke

    Ich frag in einer SQL-Datenbank nach einem bestimmten Wert
    select name from personen where ort like 'Berlin'

    Himmel! - Wenn schon ein bestimmter Wert vorliegt, dann ist LIKE _völlig_ Fehl am Platz!
    Verwende:

    SELECT
       name
    FROM
       personen
    WHERE
       ort = 'Berlin'

    LIKE ist langsam und für diese Abfrage falsch.

    wie kann ich abfangen wenn die Abfrage keinen Wert liefert

    Eine Abfrage liefert nie einen Wert, sondern ein ResultSet; eine (Multi-)Menge also.

    rs.open query,conn
    if rs = "" then ...

    pfui. RS ist kein String, sondern ein Objekt.

    if rs("name") = "" then ...

    pfui. Irgendein Attributwert von "" ist keineswegs kennzeichen für ein leeres ResultSet.

    rs.eof
       ist dein Freund.

    rs ist das recordset

    und das hat ein Beginn (bof) und Ende (eof). Falls ein Empty-Set returniert wird, sind
    beide auf TRUE.

    klappt nicht

    Klappt nicht, klappt nicht. Fehlerbeschreibung/-meldung!

    Viele Grüsse

    Philipp

    --
    RTFM! - Foren steigern das Aufkommen von Redundanz im Internet, danke für das lesen der Manuals.
    Selbstbedienung! - Das SelfForum ist ein Gratis-Restaurant mit Selbstbedienung, Menüangebot steht in den </faq/> und dem </archiv/>.
  3. Hi Rafke,

    wie kann ich abfangen wenn die Abfrage keinen Wert liefert

    if not rs is nothing then
      if not ( rs.eof and rs.bof ) then
        ...
      end if
    end if

    Gruß,
    Martin