Stefan Falz: Datentypen in ASP und Scripten

Beitrag lesen

Hallo Stefan

Zuerst zu Frage2:

Das mit dem Direktzugriff auf die Tabelle funktioniert.
Vielen Dank. Aber gibt es denn auch eine Möglichkeit diese Memo Felder über Abfragen zu selektieren.
BSP:
Feld:Beschreibung einer Veranstaltung 2000 Zeichen
Datum:eingetragen am (heute)
damit ist dieser Eintrag aktuell und wird dargestellt.
Wenn jetzt ein Tag vergeht verfällt diese Veranstaltung. Und anhand des Datums wollte ich mir immer den aktuellsten Eintrag anzeigen lassen.

Zu Frage1:

Ich habe mir ein Redaktionssystem runtergeladen(Freeware) und angepasst. Dabei habe ich folgenden Code(speziell der in der Schleife)
response.buffer = true
myFieldCount = Request.QueryString.Count-2
myWhere = ""
For i = 1 to myFieldCount

»»  myName = Request.QueryString.Key(i)
»»  myValue =  Request.QueryString.Item(myName)
»»  myType = Request.QueryString.Item(myName & "_JTMRType")
»»  If Request.QueryString(myName) = "" Then
»»  myWhere = myWhere & myName & " IS NULL AND "
»»  Else
»»  Select Case myType
»»  Case "DATETIME"
»»  myWhere = myWhere & myName & " = #" & Request.QueryString(myName) & "# AND "   Case "BOOLEAN", "BYTE", "LONG", "CURRENCY", "SINGLE", "DOUBLE", "SHORT"
»»  myWhere = myWhere & myName & " = " & Request.QueryString(myName) & " AND "
»»  Case Else
»»  myWhere = myWhere & myName & " = '" & Request.QueryString(myName) & "' AND "
»»  End Select
»»  End If
»»  i = i + 1    Next
»»  myWhere = Left(myWhere, Len(myWhere)-4)
»»  mySQLQueryString = "Delete * FROM " & myTable & " WHERE " & myWhere & " ;"
»»  'response.write mySQLQueryString
»»  gObjDC.execute mySQLQueryString
»»  Call CloseConnection
»»  Response.Redirect "tablecontent.asp?" & Request.ServerVariables("QUERY_STRING")

An der Stelle "Case DATETIME" wird das Datumsformat speziell behandelt. Um später eine SQL-Query Anweisung auszuführen. Dort muss das Datum zwischen zwei Routen stehen sonst gibt es eine fehlermedlung.
Speziell geht es um Onlinezugriff auf eine Datenbank nach registrierung. Der Nutzer soll Daten eintragen und in der DB abspeichern können (auch ändern aber nicht löschen)

Gruß Thomas

Hallo Thomas,

durch die Zuweisung »»  myType = Request.QueryString.Item(myName & "_JTMRType")
wirst Du in der Select case-Anweisung immer in den Case Else-Zweig laufen,
da immer der String "_JTMLType" angehangen wird und somit keiner der
Vergleiche ziehen kann.

Ansonsten würd ich es vorziehen, mit folgender Syntax zu arbeiten
<%
If IsDate(myValue) Then
    ' -- zusammenbasteln der SQL-Datumsabfrage
End if
...
%>

Tschau, Stefan