Stefan Falz: Datenbankabfrage ob Daten vorhanden

Beitrag lesen

Das ist schön,
wenn man seine Fragen selber beantworten kann:-)
Der Fehler lag daran, ich arbeite einmal mit dem IIS3 und einmal mit dem IIS4. Beim IIS3 Funktioniert es wie beschrieben (IF RS.EOF THEN) und beim IIS4 eben nicht. Beim IIS4 wird EOF oder BOF schon mit der Anweisung IF ERR.Number<>0 abgefangen.
Nochmals Danke für's lesen des Postings
Gruß Thomas S.

Hallo Thomas,

das wird aber nicht das Problem sein, den IIS 3 und 4 und sogar 5 sind abhängig vom ASP-Modul, daß diese Funktionen bereitstellt.
Folgender Code sollte IMMER funktionieren:

<%
Set DBConn = Server.CreateObject("ADODB.Connection")
    DBConn.open "DSNName", "User", "PW"
Set DBRec = Server.CreateObject("ADODB.Recordset")
    DBRec.open "SQLString_Oder_Tabellenname", DBConn, 3, 3
If Not DBRec.EOF Then
    Response.Write "Alles klar. Datensätze gefunden."
    Else
        Response.Write "Tabelle leer :("
End if
    DBRec.Close
Set DBRec = Nothing
    DBConn.Close
Set DBCOnn = Nothing
%>

Daher denke ich, daß Du die Recordsets mit DBConn.Execute("SQLString") öffnest. Dabei solltest Du beachten, daß es hier Probleme mit dem Cursor gibt, da die Zuordnung zu den Feldern unter Umständen schon nach dem ersten Zugriff auf ein Feld flöten gegangen ist. Außerdem ist Execute eigentlich für DML-Kommandos wie Insert, Update, Delete oder auch DDL-Statemenst, wie Create Table ... gedacht.

Tschau, Stefan