Skript: Datenbankanbindung mit ASP

Werbung
6. Dynamische Webseiten
6.1 Problemstellung
Bei der Fit4life GmbH gibt es immer wieder zeitliche Engpässe wenn
Kursänderungen, welche in der Datenbank gespeichert sind, auf den
Webseiten veröffentlicht werden sollen. In einer Projektsitzung zum
Thema „Übernahme der Kursangebote ins World Wide Web“ sollen
Möglichkeiten zur automatischen Abgleichung der Datenbank mit
der entsprechenden Webseite diskutiert werden.
Sie werden von der Geschäftsleitung beauftragt, bis zur
Projektsitzung, entsprechende Alternativen zum automatischen
Generieren des Kursangebotes auf den entsprechenden Webseiten
zu erarbeiten und vorzustellen.
6.2 Basiswissen
Die virtuelle Welt des Internets wird von zwei Lebensformen
besiedelt: Clients und Server. Ein Rechner der sich im Internet
anmeldet, ist der Client, der Webseiten in Form von HTMLDokumenten von den Servern (Webservern) bezieht. Früher waren
diese Webseiten vor allem statischer Natur, das heißt, die Inhalte
einer Webseite blieben unverändert. Dies traf auf den Text als auch
auf die Grafiken und die Formatierung zu. Wenn der Entwickler den
Inhalt der Seite verändern wollte, musste er den Text manuell
verändern und ihn dann zurück ins Internet stellen.
In den letzten Jahren haben die Webentwickler erkannt, dass
statische Inhalte nicht ausreichen. Immer mehr Unternehmen haben
damit begonnen, ihre Webseiten mit dynamischen Inhalten
auszustatten. Dynamische Webseiten verändern ihren Inhalt im
Laufe der Zeit automatisch.
Beispiele: Webshop mit Datenbankanbindung, Börsenkurse, Wetter.
Bereits bei Web-Anwendungen kleinen bis mittelgroßen Umfangs
kann eine Anbindung an eine relationale Datenbank sinnvoll sein. Sie
dient zum einen dazu, Eingaben des Benutzers oder Daten von
beliebigen anderen Datenquellen laufend zu speichern und zum
anderen liefert eine Datenbank den gesammelten Bestand an
Informationen in dynamisch erzeugtes HTML.
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 1
Die
dadurch
herbeigeführte
Strukturänderung
der WebKommunikation zeigt sich bereits auf oberster Ebene: Aus dem
ehemaligen 2-Schichten-System, bestehend aus dem Client und
dem Webserver, ist eine sogenannte 3-Pfeiler-Architektur
entstanden. Dritter Pfeiler dieser Struktur ist die Datenbank.
(1) Anfrage
(3) DB-Anweisungen
D
B
Daten
(5) dyn. HTML
(4) Antwort
IBM-kompatibel
IBM-kompatibel
Client
(2) Auswertung
Webserver
Datenbank
6.3 Erstellung dynamischer Webseiten mit ASP
Die grundlegenden Techniken zum Erstellen dynamischer Webseiten
sind reich an Namen. Zu den prominentesten Vertretern zählt
sicherlich ASP (Active Server Pages). ASP erweitert den Webserver,
so dass Webseiten durch den Zusatz von speziellen Tags
programmierbar werden. Daten und Befehle werden in einer Datei
gemischt. Der ASP-Code wird einfach als Skript in bestehende
HTML-Seiten eingefügt und bei einer Anfrage seitens des Clients
vom Webserver ausgeführt. Der Webserver erkennt an der
Dateierweiterung .asp, dass die Datei neben HTML-Inhalten auch
ASP-Skriptbefehle enthält.
Beispiel: beispiel1.asp
<html>
<head>
<title>Mein erstes ASP-Skript</title>
</head>
<body>
<h1>Hallo Welt</h1>
<br>
Auf meiner Homepage ist es
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 2
<%
=Now()
%>
<br>
<br>
<%
Response.Write "Ich glaube es wird Zeit eine Pause zu machen!"
%>
</body>
</html>
Die folgende Grafik zeigt die Wirkung des ASP-Skripts:
Erläuterung:
Mit den Tags <% .....%> wird dem Server signalisiert, dass sich hier der
ASP-Code befindet, der verarbeitet werden muss. Der Befehl now()
bedeutet, dass jedes Mal, wenn man diese Seite aufruft, das Datum und
die Uhrzeit vom Server erneut gelesen und angezeigt wird. Der
Befehl Response.Write wird verwendet, um einen Wert auszugeben.
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 3
6.4 Voraussetzungen
Das Ansprechen dynamischer Webseiten mit ASP ist einfach und
unkompliziert. Dazu ist es notwendig einen Webserver zu verwenden
der ASP unterstützt.
Beispiele:
- PWS (Personal Web Server). Er ist im Lieferumfang von Windows 9x enthalten
und kann bei der Installation aktiviert oder später nachinstalliert werden
(Systemsteuerung/Software).
- Der IIS (Internet Information Server). Er ist im Lieferumfang von Windows
NT/2000 enthalten und wird bei der Installation als Dienst eingerichtet. Zum
Konfigurieren des IIS stehen in der Systemsteuerung unter Verwaltung Tools zur
Verfügung:
Nach dem Aktivieren/Starten des Webservers legt der IIS
standardmäßig den Ordner C:\Inetpub\wwwroot als Standardordner
(Bild unten) für die Webdateien fest. Der Browser findet dann die
Startseite
(standardmäßig
die
Datei
default.asp),
mit
http://<Computername>.
Localhost
ist
die
Bezeichnung
(Computername) für den eigenen Rechner.
Beispiel: default.asp
<html>
<head>
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 4
<title>Zweites ASP-Script</title>
</head>
<body>
<h1>Hallo Welt</h1>
<br>
<%
Response.Write "Dies ist die Startseite (default.asp) meiner Homepage!" & "<br>"
Response.Write "Sie liegt in dem Verzeichnis C:\Inetpub\wwwroot!" & "<br>"
Response.Write "Ich benutze den Internet Information Server (IIS)!" & "<br>"
%>
</body>
</html>
Die folgende Grafik zeigt die Wirkung des ASP-Skripts:
6.5 Zugriff auf eine Access-Datenbank über ODBC und DSN
Eines der wichtigsten Anwendungsgebiete von ASP ist,
Informationen aus einer Datenbank auszulesen und über den
Webbrowser anzuzeigen. Um an die Objekte einer Datenbank zu
gelangen, gibt es mehrere Schnittstellen.
Der herkömmliche Weg geht über einen ODBC-Treiber. ODBC steht
für Open Database Connectivity und repräsentiert einen Standard,
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 5
der darauf abzielt, eine grundlegende Basis für das Ansprechen
verschiedenster relationaler Datenbanken in ein und derselben
Weise zu schaffen.
Ein derartiger Zugriff wird durch die Einstellung einer kleinen Datei
mit dem Namen DSN (Data Source Name) bewirkt. Sie kann im
Ordner ODBC erstellt werden.
Beispiel:
Unter Windows 95, 98, ME befindet sich dieser im Verzeichnis Einstellungen und
unter Windows 2000 im Ordner Verwaltung. Im sich entfaltenden Dialog ist
zunächst der Reiter System-DSN auszuwählen. Anschließend muss der Treiber
ausgewählt werden für den man eine Datenquelle erstellen möchten. Greift man
beispielsweise auf eine Access-Datenbank zu, dann fügt man den MicrosoftAccess-Treiber (*.mdb) hinzu.
Anschließend muss der Pfad hin zur Datenbank angegeben und ein Name für die
DSN samt Beschreibung vergeben werden. Um eine Datenbank mittels ODBC von
ASP aus anzusprechen, wird auf die mit ihr assozierte DSN zurückgegriffen.
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 6
Nachdem die ODBC-DSN-Datei erstellt wurde, kann man zuerst eine Verbindung
mit der Datenbank aufbauen:
Beispiel: dbzugriff.asp
<html>
<body>
<%
Set ConDB=Server.CreateObject("ADODB.Connection")
ConDB.Open "fit4life"
Response.Write "Verbindung zur Datenbank Fit4life.mdb geöffnet!"
%>
<br>
...
<br>
<%
ConDB.Close
Response.Write "Verbindung zur Datenbank wieder geschlossen!"
%>
</body>
</html>
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 7
Die folgende Grafik zeigt die Verbindung zur Datenbank:
Erläuterung:
ASP ist vereinfacht formuliert eine Sammlung von fünf vordefinierten
Objekten. Das Beispiel macht lediglich vom Objekt Server Gebrauch.
Im vorliegenden Fall wird es dazu genutzt, eine Instanz von
ADODB.Connection zu erzeugen. Hierbei handelt es sich um eine
Schnittstelle, die den Zugriff auf Datenbanken wesentlich erleichtert.
Um schließlich eine Verbindung zur Datenbank herzustellen, erfolgt
ein Aufruf der Methode Open, gefolgt vom Namen der DSN-Datei,
die sämtliche relevanten Daten bereitstellt. Diese Verbindung zur
Datenbank wird letztlich durch den Aufruf der Funktion Close am
Ende des Scripts wieder geschlossen.
Nachdem die Verbindung zur Datenbank geöffnet ist, sollen alle
Leistungen mit Leistungsnummer, Bezeichnung, Gruppe, Kursleiter,
VKPreis und Wochentag in einer Tabelle angezeigt werden.
Beispiel: dbzugriff1.asp
<html>
<body>
<%
Set ConDB=Server.CreateObject("ADODB.Connection")
ConDB.Open "fit4life"
Response.Write "Verbindung zur Datenbank Fit4Life.mdb geöffnet!"
%>
<br>
<%
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 8
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.Open "LEISTUNG", ConDB
Response.Write "Leistungstabelle geöffnet!"
%>
<hr>
<%
Rs.MoveFirst
While Not Rs.EOF
Response.Write Rs("LNr") & " ,"
Response.Write Rs("Bezeichnung") & " ,"
Response.Write Rs("Gruppe") & " ,"
Response.Write Rs("Kursleiter") & " ,"
Response.Write Rs("VKPreis") & " , "
Response.Write Rs("WochenTag") & " ,"
Response.Write "<br><hr>"
Rs.MoveNext
Wend
%>
<br>
<%
Rs.Close
Response.Write "Leistungstabelle wieder geschlossen!"
%>
<br>
<%
ConDB.Close
Response.Write "Verbindung zur Datenbank wieder geschlossen!"
%>
</body>
</html>
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 9
Die folgende Grafik zeigt die Datensätze der Tabelle Mitarbeiter:
Erklärung:
Im ersten Schritt wird die Verbindung zur anzuzeigenden Tabelle
(Leistung) geöffnet. Anschließend kann man mit dem RecordsetObjekt auf die Tabellendaten und die Ergebnisse einer AccessAbfrage zugreifen. Den Inhalt eines Datenbank-Feldes erhält man
mit dem Befehl Recordset(„Feldname“). Um den Satzzeiger in der
Tabelle zu bewegen gibt es verschiedene Befehle (Methoden) und
Eigenschaften. “MoveFirst“ bewegt den Satzzeiger auf den ersten
Datensatz des Recordsets. “While Not Rs.EOF“ bedeutet, dass die
Tabelle solange durchlaufen werden soll, bis sich der Satzzeiger
hinter dem letzten Datensatz der Tabelle befindet. Mit „Wend“ wird
das Recordset beendet. “Rs.Close“ schließt die Tabelle
und
“ConDB.Close“ die Datenbank.
Ändert man die Datensätze in einer Tabelle, so ändert sich
automatisch die Anzeige der Datensätze im Webbrowser.
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 10
6.6 Zugriff auf eine ACCESS-Datenbank über ADO ohne DSN
Eine Datenbank kann von ASP aus auch ohne eine DSN
angesprochen werden. Dabei stellt die Bibliothek Active Data Objects
(ADO) den Mechanismus für die Verbindung mit einer Datenbank
und die Bearbeitung der darin enthaltenen Daten bereit.
Voraussetzung hierzu ist, wie für die ODBC-Verbindung, dass die
Datenbankdatei in einem Ordner liegt, der vom Webserver erreicht
werden kann (wwwroot).
Die wichtigsten ADO Objekte für Datenbankzugriffe sind:
- Connection (Datenbankverbindung) - Repräsentiert die Verbindung zur
Datenquelle ,
- Recordset (Sammlung von Datensätzen) - Besteht aus den Datensätzen die aus
einer Datenbankabfrage stammen und dem zugehörigen Cursor, der auf den
aktuellen Datensatz zeigt,
- Field (Datenfeld) - Enthält Daten einer Datenbankspalte und Informationen über
diese Daten wie Datentyp, Datenlänge und Ähnliches. Das Recordset Objekt
stellt dabei die Fields Collection zur Verfügung, die alle Field Objekte eines
Datensatzes beinhaltet,
Beispiel: dbzugriff2.asp
<html>
<head></head>
<body>
<%
'Pfad und Dateiname der Datenbank
strDB = "Data Source=" & _
Server.MapPath("fit4life.mdb")
'Parameter zum Öffner der Datenbank
strCon = "Provider=Microsoft.Jet.OLEDB.4.0;" & strDB
'Name der Tabelle oder Abfrage, die geöffnet werden soll
strTabelle= "Leistung"
'Objekt für den Verbindungsaufbau mit der Datenbank
Set ConDB = Server.CreateObject("ADODB.Connection")
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 11
ConDB.Open strCon
Response.Write "Verbindung zur Datenbank geöffnet.<br>"
'Objekt für das Recordset-Objekt
Set RS = Server.CreateObject("ADODB.Recordset")
Rs.open strTabelle, ConDB
Response.Write "Leistungstabelle geöffnet.<br>"
'Befehle zur Bearbeitung der Daten
Response.Write "<HR>"
'Geht zum ersten Datensatz
Rs.MoveFirst
‘Liest bis das Ende der Daten erreicht ist
While Not Rs.EOF
Response.Write Rs("LNr") & " ,"
Response.Write Rs("Bezeichnung") & " ,"
Response.Write Rs("Gruppe") & " ,"
Response.Write Rs("Kursleiter") & " ,"
Response.Write Rs("VKPreis") & " , "
Response.Write Rs("WochenTag") & " ,"
Response.Write "<br><hr>"
Rs.MoveNext
Wend
'Verbindungsobjekt schließen
ConDB.close
Response.Write "Verbindung geschlossen.<br>"
%>
<hr>
</body>
</html>
Erklärung:
Den einzelnen Codezeilen sind Kommentare zur Erklärung
vorangestellt. Einen Kommentar erkennt man an dem einfachen
Hochkomma (‘). Kommentare haben keinen Einfluss auf das Skript,
sondern dienen dem Programmierer als Hilfestellung.
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 12
Die Parameter zum Öffnen der Datenbank werden über die Variable
strCon festgelegt, wobei der Parameter Provider den Treiber definiert
und Data Source den Pfad und Dateinamen der Datenbank
bestimmt. Der Treibername Microsoft.Jet.OLEDB.4.0 arbeitet mit
ACCESS 97 und ACCESS 2000. Die Befehle zum Öffnen bzw.
Schließen der Datenbank und der jeweiligen Tabelle sind identisch
mit dem Zugriff über ODBC und DSN.
Die folgende Grafik zeigt die Datensätze der Tabelle Mitarbeiter:
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 13
6.7 Abfragen mit SQL
In den bisherigen Beispielen wurden lediglich Daten aus einer
bestehenden Tabelle vollständig ausgelesen und über den
Webbrowser angezeigt. Um mit einer Datenbank zu kommunizieren
und Befehle darin auszuführen, verwendet man allerdings eine
weitere Sprache. SQL (Structured Query Language) ist eine
Datenbanksprache für relationale Datenbanken. Sie ermöglicht
dem Benutzer das Kommunizieren mit dem eigentlichen
Datenbanksystem. SQL wird vom American National Standard
Institut (ANSI) als Standardsprache für relationale Datenbanken
erklärt.
SQL gliedert sich in Anweisungen für die Datendefinition (Tabellen
erstellen, ändern und indizieren), Datenmanipulation (Datensätze
einfügen, ändern und löschen) sowie die Datenabfrage.
Beispiel: dbzugriff3.asp
<html>
<head></head>
<body>
<%
'Pfad und Dateiname der Datenbank
strDB = "Data Source=" & _
Server.MapPath("fit4life.mdb")
'Parameter zum Öffnen der Datenbank
strCon = "Provider=Microsoft.Jet.OLEDB.4.0;" & strDB
'Name der Tabelle oder Abfrage, die geöffnet werden soll
strSQL = "Select LNr, Bezeichnung, Gruppe, Kursleiter, VKPreis, WochenTag From
LEISTUNG Where WochenTag ='Montag';"
’Objekt für den Verbindungsaufbau mit der Datenbank
Set ConDB = Server.CreateObject("ADODB.Connection")
ConDB.Open strCon
Response.Write "Verbindung zur Datenbank geöffnet.<br>"
'Objekt für das Recordset-Objekt
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.open strSQL, ConDB
'Befehle zur Bearbeitung der Daten
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 14
Response.Write "<HR>"
'Geht zum ersten Datensatz
Rs.MoveFirst
'Liest bis das Ende der Daten erreicht ist
do While Not Rs.EOF
Response.Write Rs("LNr") & ", "
Response.Write Rs("Bezeichnung") & ", "
Response.Write Rs("Gruppe") & ", "
Response.Write Rs("Kursleiter") & ", "
Response.Write Rs("VKPreis") & ", "
Response.Write Rs("WochenTag") & ", "
Response.Write "<br><hr>"
'Geht einen Datensatz weiter
Rs.MoveNext
Loop
'Verbindungsobjekt schließen
ConDB.close
Response.Write "Verbindung geschlossen.<br>"
%>
<hr>
</body>
</html>
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 15
Die folgende Grafik zeigt die SQL-Abfrage:
Erläuterung:
Die Grundstruktur einer SQL – Abfrage sieht wie folgt aus:
Select
Attribute
From
Tabellen
Where
Selektionskriterien;
Dabei sind nur die Select- und die From- Klausel zwingend. Alle
SQL-Anweisungen sind mit einem Semikolon (;) abzuschliessen.
Beispiel: Es werden alle Leistungen gesucht, welche an einem Montag stattfinden.
Select LNr, Bezeichnung, Gruppe, Kursleiter, VKPreis, WochenTag
From LEISTUNG
Where WochenTag ='Montag';"
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 16
Im ASP-Skript werden die SQL-Befehle zur weiteren Verarbeitung in
eine Variable gepackt.
strSQL = "Select LNr, Bezeichnung, Gruppe, Kursleiter, VKPreis, WochenTag From
LEISTUNG Where WochenTag ='Montag';"
Für den Zugriff auf die Datenbank benötigt man die Befehle, die in
den vorhergehenden Beispielen erläutert wurden. Da man statt der
gesamten Leistungstabelle nur bestimmte Daten sehen möchte, wird
lediglich der Parameter Leistungstabelle durch die SQL-Anweisung
ausgetauscht.
Was schon anhand dieses kleinen Beispieles ersichtlich ist: Um
Daten aus einer Datenbank in einem ASP Skript verwenden zu
können, ist es durchaus hilfreich, wenn man ein gesundes Wissen
über die Grundlagen der Datenbankprogrammierung und der
Sprache SQL hat.
6.8 Erstellen von HTML – Formularen zur Datenbank-Abfrage
Für die Administration einer Datenbank ist es sinnvoll auf einer
HTML-Seite Formularmasken zu erstellen, um folgende Aufgaben
durchführen zu können:
- Suche nach bestimmten Datensätzen
- Hinzufügen von Datensätzen
- Anzeigen der gesamten Datenbank
- Löschen von Datensätzen.

Formular „Einen Datensatz suchen“
Das Formular besteht aus einem Eingabefeld (db_feld1) und einem
Submit-Button, der die Suchanfrage an die Seite db_ergebnis.asp
schickt.
<HTML>
<HEAD>
<TITLE>Einen Datensatz suchen</TITLE>
</HEAD>
<BODY>
<B>An welchem Wochentag möchten Sie Kurse besuchen?</B>
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 17
<FORM METHOD=POST ACTION="db_ergebnis.asp">
<INPUT TYPE="text" NAME="db_feld1" style="width:200px" size="20">
<INPUT TYPE="submit" value="suchen" style="width:100px">
</FORM>
</BODY>
</HTML>
Die folgende Grafik zeigt das HTML-Formular:

Ergebnis einer Datenbanksuche ausgeben – db_ergebnis.asp
<html>
<head></head>
<body>
<%
'Speichern der im Request-Objekt übergebenen Formulardaten
Dim feld1
feld1 = Request.Form("db_feld1")
'Pfad und Dateiname der Datenbank
'Pfad und Dateiname der Datenbank
strDB = "Data Source=" & _
Server.MapPath("fit4life.mdb")
'Parameter zum Öffnen der Datenbank
strCon = "Provider=Microsoft.Jet.OLEDB.4.0;" & strDB
'Name der Tabelle oder Abfrage, die geöffnet werden soll
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 18
strSQL = "Select LNr, Bezeichnung, Gruppe, Kursleiter, VKPreis, WochenTag From
LEISTUNG Where WochenTag LIKE '%" & feld1 & "%';"
'Objekt für den Verbindungsaufbau mit der Datenbank
Set ConDB = Server.CreateObject("ADODB.Connection")
ConDB.Open strCon
Response.Write "Verbindung zur Datenbank geöffnet.<br>"
'Objekt für das Recordset-Objekt
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.open strSQL, ConDB
'Befehle zur Bearbeitung der Daten
Response.Write "<HR>"
'Geht zum ersten Datensatz
Rs.MoveFirst
'Liest bis das Ende der Daten erreicht ist
do While Not Rs.EOF
Response.Write Rs("LNr") & ", "
Response.Write Rs("Bezeichnung") & ", "
Response.Write Rs("Gruppe") & ", "
Response.Write Rs("Kursleiter") & ", "
Response.Write Rs("VKPreis") & ", "
Response.Write Rs("WochenTag") & ", "
Response.Write "<br><hr>"
'Geht einen Datensatz weiter
Rs.MoveNext
Loop
'Verbindungsobjekt schließen
ConDB.close
Response.Write "Verbindung geschlossen.<br>"
%>
<hr>
</body>
</html>
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 19
Die folgende Grafik zeigt das Ergebnis der Abfrage:
Erklärung:
Um die Programmierung übersichtlicher zu gestalten werden die im
Request-Objekt übergebenen Formulardaten zunächst in eine
Variable gespeichert.
Dim feld1
feld1 = Request.Form("db_feld1")
Danach wird die Verbindung zur Datenbank hergestellt und das
Recordset-Objekt geöffnet. Mit der SQL-Abfrage Like ’%Kriterium%’
wird nach einem Teilstring innerhalb eines Feldes gesucht. Im
Beispiel bezieht sich die Suche auf den Wochentag.
sql = "Select LNr, Bezeichnung, Gruppe, Kursleiter, VKPreis, WochenTag from LEISTUNG
Where WochenTag LIKE '%" & feld1 & "%';"
Nur wenn das Recordset Datensätze als Ergebnis der Abfrage
enthält, wird die Datenbankoperation auch ausgeführt.
If Rs.EOF = False Then
Do Until Rs.EOF
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 20
Hat der User einen Begriff gesucht, der nicht in der Datenbank
enthalten ist, wird eine Fehlermeldung ausgegeben.
Else
Response.Write("<b>Leider keinen Eintrag gefunden!</b>")
End If
Zum Schluss wird das Recordset und die Datenbankverbindung
wieder geschlosssen.

Gesamte Tabelle durchsuchen
Bezieht sich die Suche nicht nur auf den Wochentag, so ist der
SQL-Befehl folgendermaßen zu ergänzen:
Beispiel: db_ergebnis1.asp
strSQL = "Select LNr, Bezeichnung, Gruppe, Kursleiter, VKPreis, WochenTag
From LEISTUNG
Where LNr & Bezeichnung & Gruppe & Kursleiter & VKPreis & WochenTag LIKE '%" &
feld1 & "%';"
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 21
6.9 Vereinfachter Zugriff auf eine Access-Datenbank mit Editor
Neben der manuellen Erstellung von ASP-Skripten gibt es zahlreiche
Editoren, welche den Datenbank-Zugriff per Klick bewerkstelligen.
Beispielsweise ist Microsofts FrontPage gerade bei der Pflege und
Verwaltung großer Sites ein wertvolles Werkzeug und verfügt über
die notwendigen Funktionen, eine Datenbank in die Website zu
integrieren. Besonders komfortabel gelingt dies mit der hauseigenen
Access-Datenbank, es lassen sich jedoch auch andere
Datenbestände
einbinden.
FrontPage
sorgt
für
die
assistentengestützte Verbindung zur Datenbank und das Anlegen
von Abfrageformularen. Lediglich beim Editieren von SQL-Abfragen
erweist sich der Webeditor mitunter etwas schwierig. Mit Access
erzeugte Abfragen lassen sich hingegen problemlos aus einer
Auswahlliste im Assistenten auswählen. Bei der Erzeugung
dynamischer Seiten konzentriert sich das Programm auf ASP.
Aufgrund der zahlreichen Assistenten gelingt auch ohne ASPSkriptprogrammierung
jedem
User
mit
FrontPage
die
Datenbankanbindung.
a) Alle Datensätze einer Tabelle dynamisch anzeigen
Schritt 1:
Erstellen Sie mit Datei/Neu/Seite eine neue Seite und speichern Sie
sie im wwwroot – Ordner ihres Webservers als ASP-Seite ab.
Beispiel: db_frontpage.asp.
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 22
Schritt 2:
Wählen Sie im Dialogfeld Einfügen die Registerkarte Datenbank /
Ergebnisse.
Schritt 3:
Führen Sie die folgenden Schritte aus:
- Neue Datenbankverbindung verwenden / Erstellen.
- Dialogfeld Datenbank / Hinzufügen.
- Geben Sie einen Namen für die Datenbank ein (Beispiel:
Fit4Life).
- Wählen Sie als Verbindungstyp: Datei oder Ordner im
aktuellen Web.
- Wählen Sie dann Ihre Datenbank innerhalb des wwwrootOrdners aus (Beispiel: fit4life.mdb).
- Klicken Sie jeweils auf OK.
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 23
Schritt 4:
Nachdem Sie alle Dialogfelder mit OK bestätigt haben, erscheint die
ausgwählte Datenbank im Dialogfeld: Bestehende Datenbank
verwenden.
Klicken Sie auf Weiter.
Wählen Sie im Dialogfeld Datensatzquelle die Tabelle aus, welche
Sie dynamisch auf Ihrer Webseite anzeigen möchten.
(Beispiel: Tabelle Leistung)
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 24
Im nächsten Schritt können Sie die anzuzeigenden Spalten der
Tabelle auswählen. Wenn Sie keine Einschränkungen vornehmen,
werden alle Spalten angezeigt.
Im nächsten Schritt können Sie das Design der Tabelle auswählen.
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 25
Zum Schluß können Sie noch auswählen, wieviel Datensätze Sie auf
einer Seite anzeigen möchten.
Die folgende Abbildung zeigt das Ergebnis des DatenbankAssistenten:
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 26
Schritt 5:
Die folgende Grafik zeigt das Ergebnis des Datenbankzugriffes:
b) Abfragen mit SQL
Wenn Sie Schritt 1 bis 3 ausgeführt haben, können Sie direkt die bestehende
Datenbankverbindung verwenden.
Wählen Sie im Dialogfeld Benutzerdefinierte Abfrage / Bearbeiten.
Geben Sie Ihre SQL-Anweisung ein.
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 27
Beispiel: Alle Leistungen welche die Fit4Life GmbH an einem Montag anbietet
sollen angezeigt werden.
Bestätigen Sie die folgenden Schritte mit weiter und speichern Sie
die Datei ab.
(Beispiel: db_frontpage1.asp)
Die folgende Darstellung zeigt das Ergebnis der Abfrage:
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 28
Im folgenden können Sie ihren Datenbankzugriff folgendermaßen
bearbeiten.
- Bewegen Sie die Maus auf den Datenbankzugriff.
- Klicken Sie mit der rechten Maustaste.
- Wählen Sie Eigenschaften: Datenbankergebnisse.
Thomas Ohlhauser
Datenbankanbindung mit ASP
Seite 29
Herunterladen