Felix: Datenbank um Datensatz erweitern

Hallo ihr schlauen füchse...

ich will einen datensatz zu einer datenbank hinzufügen:

<%

Dim objConn
 Set objConn = server.createobject("adodb.connection")
    objConn.open "test"

Dim sqlCommand
   sqlCommand = "Select rand_name, " &_
            "rand_vorname, " &_
            "rand_street, " &_
            "rand_zip, " &_
            "rand_city, " &_
          "From TestTabelle" &_
          "Where 1<0"

Dim objRS
  Set objRS = server.createobject("adodb.Recordset")
      objRS.CursorLocation = adUseClient
      objRS.Open sqlCommand, objConn, adOpenStatic, adLockOptimistic

If objRS.Supports(adAddNew) Then

objRs.AddNew
      objRs.Fields("rand_name")  = "Ehrlich"
      objRs.Fields("rand_vorname")= "Ernst"
   objRs.Fields("rand_street") = "Ebersdorfer Str. 5"
   objRs.Fields("rand_zip")  = "567890"
   objRs.Fields("rand_city")   = "Ecksberg"
   objRs.Update

Response.Write "Der Datensatz wurde eingefügt"
  Response.Write "<a href=""localhost/test/test.asp"">Link</a>"

Else

Response.Write "Der Datensatz wurde nicht eingefügt"
  Response.Write "<a href=""localhost/test/test.asp"">Link</a>"
    End if

objRs.Close
  Set objRS = Nothing

objConn.Close
 Set objConn = Nothing

%>

wenn ich jedoch versuche das zu tun, wird ausgegeben dass hier:

objRS.CursorLocation = adUseClient
   objRS.Open sqlCommand, objConn, adOpenStatic, adLockOptimistic

ein fehler vorliegt... ich habe das aber aus dem ASP Codebook (Addison-Wesley) übernommen...

was habe ich falsch gemacht?

gruß, Felix

  1. Hallo,

    objRS.CursorLocation = adUseClient
       objRS.Open sqlCommand, objConn, adOpenStatic, adLockOptimistic

    ein fehler vorliegt...

    schön, mein auto ist kaputt, woran liegt das?

    gruss

    --
    no strict;
    no warnings;
    79.78 cups of Coffee (Brewed) + Me = Death
    Kalorien sind winzig kleine nachtaktive Tiere, die unbeobachtet menschliche Kleidung enger nähen.
  2. Hi,

    ist ja nur so eine Vermutung, aber bist du sicher, dass das hier

    Set objConn = server.createobject("adodb.connection")
        objConn.open "test"

    eine gültige Datenbankverbindung ergibt?
    Ist test eine ODBC-Datenquelle, ohne Passwort, ohne alles, die auf dem jeweiligen Rechner ansprechbar ist?
    Ich persönlich bin ein Freund der DSN-losen Verbindungen. Das sind Verbindungen, die direkt über den Treiber und das Dateisystem aufgebaut werden, ohne den Umweg über eine eingerichtete Datenquelle. Das hat den Vorteil, dass der Provider da in der Regel nichts mit zu kriegen hat und es für ihn keinen Aufwand bedeutet.
    Sieht in etwa so aus:
    Set conn = Server.CreateObject("ADODB.CONNECTION")
    conn.Open "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; DBQ=D:\Datenbank\tennisstatistics.mdb;"

    Unabhängig davon solltest du vielleicht mal etwas debuggen gehen. Versuch mal vor den Anweisungen ein
    On Error Resume Next
    und verschieb mal die Zeile
    if Err.Number <> 0 then
       Response.Write(Err.Description)
    end if
    Damit solltest du einen eventuellen Fehler selbst aufspüren können.

    MfG
    Rouven

    --
    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(