Kategorien:
Suchbegriffe:
Suchfelder:
Suche starten
Neue Beiträge / Top 7
Alle Artikel / Liste
Bücher zu ASP/ASP.Net
Startseite / Hilfe
Fragen zu ASP/ASP.NET
Datenschutzrichtlinen
Impressum / Kontakt
Das ASP.Net Codebook. Die unentbehrliche Referenz für alle ASP.Net-Entwickler [Autoren: Stefan Falz, Karsten Samaschke]
Active Server Pages-FAQ
Active Server Pages - FAQ (v. 1.50) © 2000 - 2020 by Stefan Falz Webconsulting

GetFile! Dynamischer Dateiupload im Browser

Datenbankzugriffe Zurück Druckversion Stefan Falz 10.11.2000
Frage: Wann sollte ich ein Recordset für Datenbankoperationen benutzen
Sobald Sie Datensätze aus einer Datenbank abfragen möchte, empfiehlt sich der Einsatz
von <% Set objRS = Server.CreateObject('ADODB.Recordset') %> und anschliessendem
expliziten Öffnen des Recordsets mit <% objRS.Open SQL, objConn, 3, 3 %>.

Dies hat den Hintergrund, dass die Methode Execute des Connection-Objekts zwar auch ein
Recordset zurückliefert, wenn das SQL-Statement Datensätze mit SELECT ausliest, dieses
Recordset aber standardmässig mit Parametern erstellt wird, die häufg zu Problemen führen
können.

Die wichtigsten Unterschiede bei den Parametern:
- CursorType ist 0 (es kann jeweils nur zum nächsten Datensatz gesprungen werden)
- LockType ist 1 (Das Recordset ist schreibgeschützt)
- BookMark ist nicht verfügbar (es können keine Lesezeichen gesetzt werden)
- PageCount ist nicht verfügbar, bzw. immer -1 (kein Blättern: "Seite x von y möglich)
- RecordCount ist nicht verfügbar, bzw. immer -1 (keine Ausgabe: "x Datensätze gefunden" möglich)
- mehrfaches Auslesen z.B. von Memofeldern ist nicht direkt möglich, sondern nur über Umwege

Wenn Sie lediglich DML-Statements (UPDATE, INSERT, DELETE) absetzen möchten, also
die Datenbank ändern möchten, empfiehlt sich der Einsatz der Methode Execute des
Connection-Objekts.

<%
UpdateSQL = 'UPDATE <tabelle> SET <feld> = <wert> WHERE <feld_id> = <wert_id>
objConn.Execute UpdateSQL

InsertSQL = 'INSERT INTO <tabelle> (feld1, feld2) VALUES ('<wert1>', '<wert2>')
objConn.Execute InsertSQL

DeleteSQL = 'DELETE FROM <tabelle>  WHERE <feld_id> = <wert_id>
objConn.Execute DeleteSQL
%>
Sehr gut
1 2 3 4 5 6
Ungenügend
Zurück | Bisherige Aufrufe: 25178 | Bisherige Bewertungen: 90 | Durchschnitt: 1,99
Stefan Falz Webconsulting