Hallo! > der string > --- > ...AND NOT Aktiv = 'd' ... > --- > ber�cksichtigt nicht "null" (tut also so als ob null = 'd') obwohl es sich > dabei doch auch offensichtlich nicht um 'd' handelt... > nur der string > --- > AND (NOT Aktiv = 'd' OR Aktiv IS null) > --- > funktioniert... > > gibts keine m�glichkeit das mit EINER abfrage zu erschlagen???
Auch das ist eine Besonderheit von NULL: Wenn kein Wert vorhanden ist, kann auch kein Vergleich durchgef�hrt werden. Genau das macht ja auch den Unterschied zwischen NULL und der leeren Zeichenfolge '' aus. Deine Schlussfolgerung (SQL: NULL = 'd') ist nat�rlich etwas gewagt. Daraus w�rde ja unmittelbar folgen, dass auch 'd' = 'e' = 'f' ... ist. ;-) Du kannst nun NULL automatisch durch einen Standardwert (z. B. '') ersetzen lassen und bekommst das gew�nschte Ergebnis. Wenn man NULL nicht nutzen kann, sollte man es von vornherein ausschalten. Im Allgemeinen ist es aber besser, wenn man zus�tzlich auf NULL abpr�ft. > 2. problemchen: > > der string: > --- > if not rs.bof = rs.eof then Auch das halte ich f�r eine gewagte Konstruktion. EOF und BOF sind Eigenschaften eines Recordset-Objekts, die beide Boolean-Werte zur�ckgeben. Deine Bedingung wird also wahr, wenn Du mit rs.MoveNext ans Dateiende (rs.BOF = false, not rs.BOF = true, rs.EOF = true; not rs.BOF = rs.EOF weil true = true) oder mit rs.MovePrevious zum Dateianfang gehst (dann ist rs.BOF = true, not rs.BOF = false, rs.EOF = false; not rs.BOF = rs.EOF weil false = false). Du willst aber pr�fen, ob der Zeiger sowohl am Anfang als auch am Ende steht, was nur bei einem leeren Recordset der Fall sein kann, also ... If rs.BOF and rs.EOF then ... Das ist die korrekte Pr�fung auf leeres Recordset, oder "if rs.RecordCount = 0", wenn der Cursor das unterst�tzt. Im Allgemeinen reicht es aus, unmittelbar nach dem �ffnen des Recordsets auf rs.EOF zu pr�fen, z. B. Do While not rs.EOF Rs.MoveNext Loop Freundliche Gr��e Joachim van de Bruck | [aspdedatabase] als [email protected] subscribed | http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv | Sie k�nnen sich unter folgender URL an- und abmelden: | http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp
