Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Kai Ziegenhagen Geändert vor über 10 Jahren
1
Internet-Datenbanken und ASP Eine Einführung von J.Sommer & A.Vortisch
2
Internet-Datenbanken und ASP Inhalt: Voraussetzungen Was ist ASP ? - Unterschiede zu CGI - Aufbau Hallo World mit ASP Grundlegende Befehle ODBC und ADO.... Was ist denn das ?! Die erste Datenbankabfrage Einfügen von Daten in die Datenbank Löschen von Daten
3
Folgende Voraussetzungen müssen erfüllt sein: Leistungsfähiger Rechner (200MHZ, 128 MB, SCSI- Platte, TCP/IP-Netzwerk) NT 4 - Server Office 97 NT-Service Pack 3 oder 4 MS-Internet-Explorer 4 SP1 Option-Pack 4 für NT 4 Service-Release 1 oder 2 für Office 97 Vom Option-Pack 4 benötigen Sie nur : - IIS 4 - Transaction-Server (für ASP) - und die Datenbankanbindungen - eventuell Beispiele und Hilfen Wichtig: Legen Sie bei der Installation von NT Partitionen (System, Daten usw,) an und vergeben Sie Rechte (NT ist normalerweise total offen !!) Installieren Sie in dieser Reihenfolge !!! Installieren Sie von Office 97 die Access ODBC-Treiber mit. Ansonsten gilt : Weniger ist mehr. Nur die unbedingt nötigen Komponenten installieren. Internet-Datenbanken und ASP Voraussetzungen
4
Internet-Datenbanken und ASP Was ist ASP ? Unterschiede zu CGI Was ist ASP ? Active Server Pages ist eine Technologie, die es Internet-Entwicklern erlaubt, jede Art und Anzahl von serverseitigen Programmiersprachen in einer HTML Datei zu kombinieren, um dynamische Web-Seiten zu erzeugen. Dies bedeutet: - ASP sind Scripte, die auf einem Server laufen und NICHT beim Anwender - ASP-Scripte können mit verschiedenen Programmiersprachen erstellt werden (VB-Script, JavaScript, Pearl - Standard: VB-Script) - ASP-Scripte sind HTML-Dateien mit eingefügtem Quellcode und haben die Endung.ASP - Der Quellcode wird vom Server interpretiert und nur die Ergebnisse werden zum Anwender verschickt. - ASP ist eine Microsoft Technologie und funktioniert nur mit dem IIS 4
5
Unterschiede zu CGI ? - CGI bedeutet Common Gateway Interface und läuft immer in einem eigenen Adressraum, der vom Betriebssystem gestellt wird - ASP läuft im Adressraum des Webservers und ist damit schneller - CGIs werden immer mit EINER Programmiersprache erstellt - In ASP kann man HTML und Programmcode mischen - ASP erlaubt Kontrolle über die laufende Anwendung (Session) - ASP erlaubt den Austausch von Daten zwischen den Anwendungen - ASP erlaubt das Verwenden von Active-X-Komponenten Internet-Datenbanken und ASP Was ist ASP ? Unterschiede zu CGI
6
Aufbau von ASP ASP besteht aus Objekten und Komponenten: Objekte: - Das Application-Object wird gebraucht, um Daten innerhalb einer ASP- Anwendung auszutauschen - Das Request-Object wird benötigt, um Eingaben in HTML-Formulare und Parameter der Kommandozeile auszulesen - Das Response-Object sendet Daten zum Client-Browser - Das Server-Object erlaubt Zugriff auf interne Komponenten - Das Session-Object gibt Kontrolle über bestimmte User-Aktionen Internet-Datenbanken und ASP Was ist ASP ? Unterschiede zu CGI
7
Komponenten: - Die AD ROTATOR Komponente erlaubt das Einblenden von Werbung - Die BROWSER CAPABILITIES Komponente liefert Informationen über den Client- Browser (Typ, Version, OS usw.) - Die DATABASE ACCESS Komponente ermöglicht den Zugriff auf eine ODBC- Datenbank - Die CONTENT LINKING Komponente ermöglicht die Katalogisierung der Web- Pages auf einen Server - Die FILE ACCESS Komponente erlaubt den Zugriff auf Textdateien Internet-Datenbanken und ASP Was ist ASP ? Unterschiede zu CGI
8
Wir beschränken uns im Folgenden auf: - das Request Object - das Response Object - das Server Object und - die Database Access Komponente Internet-Datenbanken und ASP Was ist ASP ? Unterschiede zu CGI
9
Internet-Datenbanken und ASP Hallo World mit ASP Das folgende Beispiel zeigt ein einfaches aber voll funktionsfähiges ASP-Script. Es wird die Write-Methode des Response Objekts verwendet, um Daten auszugeben. Aufruf: lektion2a.asplektion2a.asp
10
Internet-Datenbanken und ASP Hallo World mit ASP ASP-Einfuehrung Lektion 2a Dies ist ein ASP Test ! Wenn alles richtig konfiguriert ist, sollte nach dieser Zeile der Satz 'Hallo World' erscheinen. <% response.write("Hallo World") %> Lektion2a.asp
11
Internet-Datenbanken und ASP Grundlegende Befehle Das folgende Beispiel zeigt ein einfaches aber voll funktionsfähiges ASP-Script. Es werden die verschiedenen Variable-Typen gezeigt und angezeigt. Aufruf: lektion3a.asplektion3a.asp
12
Internet-Datenbanken und ASP Grundlegende Befehle <% Dim a Dim b Dim c,d,e Dim f(3) %> ASP-Einfuehrung Lektion 3a - Variablen <% a = "Hallo" b = "World" c = 2000 d = 200000 e = 3.14159 f(0) = "Ein" f(1) = "Array" f(2) = "Test" %> Dies ist ein ASP Test ! Variablen (Deklaration): Lektion3a.asp
13
Internet-Datenbanken und ASP Grundlegende Befehle Wenn alles richtig konfiguriert ist, sollten Sie die Inhalte und Typen der Variablen a bis f angezeigt bekommen. <% response.write(" Strings a,b : " & a & " " & b & " ") response.write(" Integer c : " & c & " ") response.write(" Long Int d : " & d & " ") response.write(" Kommazahl e : " & e & " ") response.write(" Array f(3) : " & f(0) & " " & f(1) & " " & f(2) & " ") %> Variablen (Benutzung): Lektion3a.asp
14
Internet-Datenbanken und ASP Grundlegende Befehle +:Addieren -:Subtrahieren *:Multiplizieren /:Dividieren &:Strings addieren <:kleiner als >:größer als <>: ungleich <=:kleiner gleich als >=:größer gleich als =:gleich Rem / :Kommentar Die wichtigsten Operatoren :
15
Internet-Datenbanken und ASP Grundlegende Befehle Function name [(Argumente)] [Anweisungen] [name=Rückgabewert] [Exit Function] [Anweisungen] [name=Rückgabewert] End Function Funktionen :
16
Internet-Datenbanken und ASP Grundlegende Befehle If BedingungA Then [Anweisungen A] [ElseIf BedingungB Then [Anweisungen B]]... [Else [Anweisungen C]] End If Kontrollbedingungen: Select Case Testausdruck [Case Ausdrucksliste] [Anweisungen]... [Case Else Ausdruck [Anweisungen]] End Select
17
Internet-Datenbanken und ASP Grundlegende Befehle For counter = Start To Ende [Step Differenz] [Anweisungen] [Exit For] [Anweisungen] Next Schleifen: Do [{While | Until} Bedingung] [Anweisungen] [Exit Do] [Anweisungen] Loop While [Bedingung] [Anweisungen] [Exit While] [Anweisungen] Wend For Each Element In Gruppe [Anweisungen] [Exit For] [Anweisungen] Next
18
Internet-Datenbanken und ASP Grundlegende Befehle Das folgende Beispiel zeigt ein einfaches ASP-Script, welches wichtige Funktionen, die immer wieder benötigt werden, enthält. Zusätzlich wird die Abfrage von Kommandozeilen-Parameter und die Definition von eigenen Funktionen gezeigt. Das Script gibt x-Anzahl von Zehnerblöcken Ihres Textes aus. Aufruf: lektion3b.asp?Anzahl=[x]&Text=[Ihr Text]lektion3b.asp?Anzahl=[x]&Text=[Ihr Text]
19
Internet-Datenbanken und ASP Grundlegende Befehle <% Dim anzahl Dim a Dim c Dim Text if request("Anzahl")="" or request("Anzahl")>10 or request("Anzahl")<1 then 'Parameter "Anzahl" pruefen anzahl=10 else anzahl=request("Anzahl") end if if request("Text")="" then'Parameter "Text" pruefen text="Nichts angegeben!" else text=request("Text") end if %> Lektion3b.asp
20
Internet-Datenbanken und ASP Grundlegende Befehle ASP-Einfuehrung Lektion 3b - Beispiele für grundlegende Befehle Dies ist ein ASP Test ! <%'len = Stringlaenge c=string(len(text),"*")'String mit Sternchen erzeugen for a = 1 to anzahl response.write( chr(64+a) & ") " & c & " ")erzeuge Zeichen von A bis... ausgabe(text) next %> Lektion3b.asp
21
Internet-Datenbanken und ASP Grundlegende Befehle <% function ausgabe(x) dim t for t= 1 to 10 response.write( t & " : " & x & " " ) next end function %> Lektion3b.asp
22
ODBC und ADO... Was ist den das ?! Microsoft verfolgt neue Technologien auf Basis seines Component Object Modells (COM) Mittelpunkt der neuen Datenbankstrategie ist OLE DB OLE DB erlaubt nicht nur Zugriff auf relationale Datenquellen (z.B. Access, SQL-Server), sondern ist universell und beherrscht auch Zugriff auf Internet-Logs, Mail- oder Textdateien Das Komponenten-Modell:
23
ODBC und ADO... Was ist den das ?! OLE DB tritt in Aktion, wenn ein sog. Consumer Daten anfordert Ein solcher Consumer können z.B. die Active Data Objects (ADO) sein, die ein Entwickler in ASP-Seiten verwendet hat OLE DB leitet die Anfragen eines Consumers an den richtigen Provider (z.B. eine Datenbank) weiter Die Verbindung zwischen OLE DB und Datenbank wird über ODBC (Open Database Connectivity) hergestellt
24
ODBC und ADO... Was ist den das ?!
25
Internet-Datenbanken und ASP Die erste Datenbankabfrage Das folgende Beispiel zeigt ein ASP-Script, welches die Tabelle TB_Firma der Datenbank BPS.mdb anzeigt. Es werden auch Möglichkeiten zum Hinzufügen und Löschen von Daten angeboten (lektion6 und lektion7). Die Datenbank muß dafür im ODBC-Setup als BPS angemeldet sein. Die Verwendung der DATABASE ACCESS Komponente wird hier demonstriert. Aufruf: lektion5a.asplektion5a.asp
26
Internet-Datenbanken und ASP Die erste Datenbankabfrage ASP-Einfuehrung Lektion 5a - Beispiel für eine Datenbankabfrage Inhalt von TB_Firmen Lektion5a.asp
27
Internet-Datenbanken und ASP Die erste Datenbankabfrage <% sql="SELECT TB_Firmen.Key_Firma, TB_Firmen.Name, TB_Firmen.Strasse, TB_Firmen.PLZ, TB_Firmen.Ort, TB_Firmen.Telefon, TB_Firmen.Fax, TB_Firmen.[E-Mail] FROM TB_Firmen" set DB=server.createobject("ADODB.CONNECTION") DB.open("BPS") set RS=DB.execute(sql) if DB.errors.count=0 then %> Nr. Name Strasse PLZ Ort Telefon Fax E-Mail Optionen <% Lektion5a.asp
28
Internet-Datenbanken und ASP Die erste Datenbankabfrage while not rs.eof %> ">löschen <% rs.movenext wend Lektion5a.asp
29
Internet-Datenbanken und ASP Die erste Datenbankabfrage RS.Close DB.Close %> Hinzufügen <% else response.write( " Es sind Datenbankfehler aufgetreten : " ) for j = 0 to DB.errors.count - 1 response.write( DB.errors(j).description & " " ) next DB.errors.clear end if %> Lektion5a.asp
30
Internet-Datenbanken und ASP Die erste Datenbankabfrage Aufgabe: Programmieren Sie ein ASP-Script, das aus der Datenbank,BPS.mdb die Tabelle TB_Praktikanten ausliest. Benutzen Sie folgendes SQL-Statement: SELECT TB_Praktikanten.Key_Praktikant, TB_Praktikanten.Name, TB_Praktikanten.Vorname, TB_Praktikanten.Matrikelnummer, TB_Praktikanten.[E-Mail], TB_Praktikanten.Telefon FROM TB_Praktikanten Lösung: lektion5b.asplektion5b.asp
31
Internet-Datenbanken und ASP Die erste Datenbankabfrage Das folgende Beispiel zeigt ein ASP-Script, welches die Praktikanten einer Firma anzeigt. Jede Firma kann 2 Praktikanten aufnehmen. Die Datenbank BPS.mdb muß dafür im ODBC-Setup als BPS angemeldet sein. Die DATABASE ACCESS Komponente und die Verwendung von komplexeren SQL-Befehlen wird hier demonstriert. Aufruf: lektion5c.asplektion5c.asp
32
Internet-Datenbanken und ASP Die erste Datenbankabfrage ASP-Einfuehrung Lektion 5c - Beispiel für eine Datenbankabfrage Firmen und ihre Praktikanten Lektion5c.asp
33
Internet-Datenbanken und ASP Die erste Datenbankabfrage <% sql = "SELECT TB_Firmen.Name, TB_Firmen.Telefon, TB_Praktikanten.Name AS pr1, TB_Praktikanten_1.Name AS pr2" sql = sql & " FROM TB_Praktikanten INNER JOIN (TB_Praktikanten AS TB_Praktikanten_1 INNER JOIN TB_Firmen ON" sql = sql & " TB_Praktikanten_1.Key_Praktikant = TB_Firmen.Key_Praktikant1) ON TB_Praktikanten.Key_Praktikant = TB_Firmen.Key_Praktikant2" Lektion5c.asp
34
Internet-Datenbanken und ASP Die erste Datenbankabfrage set DB=server.createobject("ADODB.CONNECTION") DB.open("BPS") set RS=DB.execute(sql) if DB.errors.count=0 then %> Name Telefon Praktikant1 Praktikant2 <% Lektion5c.asp
35
Internet-Datenbanken und ASP Die erste Datenbankabfrage while not rs.eof %> <% rs.movenext wend Lektion5c.asp
36
Internet-Datenbanken und ASP Die erste Datenbankabfrage RS.Close DB.Close %> <% else response.write( " Es sind Datenbankfehler aufgetreten : " ) for j = 0 to DB.errors.count - 1 response.write( DB.errors(j).description & " " ) next DB.errors.clear end if %> Lektion5c.asp
37
Internet-Datenbanken und ASP Einfügen von Daten Das folgende Beispiel zeigt ein HTML-Formular zum Erzeugen eines neuen Firmeneintrags in der Datenbank. Die Datenbank BPS.mdb muß dafür im ODBC-Setup als BPS angemeldet sein. Das Formular nimmt nur die Daten entgegen und ruft dann ein ASP-Script (lektion6a.asp) auf, welches die Verbindung zur Datenbank herstellt und einen neuen Datensatz erzeugt. Aufruf: lektion6a.htm Komplette Anwendung für Firmenverwaltung: lektion5a.asplektion5a.asp
38
Internet-Datenbanken und ASP Einfügen von Daten ASP-Einfuehrung Lektion 6a - Beispiel für das Einfügen von Daten Neuer Firmeneintrag Name: Strasse: PLZ: Lektion6a.htm
39
Internet-Datenbanken und ASP Einfügen von Daten Ort: Telefon: FAX: E-Mail: Lektion6a.htm
40
Internet-Datenbanken und ASP Einfügen von Daten <% on error resume next Rem ASP-Einfuehrung Lektion 6a - Beispiel für das Einfügen von Daten name=request("Name") strasse=request("Strasse") plz=request("PLZ") ort=request("Ort") telefon=request("Telefon") fax=request("Fax") email=request("Email") Set DB = Server.CreateObject("ADODB.Connection") DB.Open "BPS" Lektion6a.asp
41
Internet-Datenbanken und ASP Einfügen von Daten sql = "INSERT INTO TB_Firmen(Name,Strasse,PLZ,Ort,Telefon,Fax,[E-Mail])" sql = sql & " VALUES (" sql = sql & "'" & name & "'," sql = sql & "'" & strasse & "'," sql = sql & "'" & plz & "'," sql = sql & "'" & ort & "'," sql = sql & "'" & telefon & "'," sql = sql & "'" & fax & "'," sql = sql & "'" & email & "')" Set rs = DB.Execute(sql) 'response.write(sql) db.close response.redirect("lektion5a.asp")ruft nach dem Einfügen die Übersicht auf %> Lektion6a.asp
42
Internet-Datenbanken und ASP Einfügen von Daten Aufgabe: Programmieren Sie ein HTML-Formular und ein ASP-Script, welche in der Tabelle,TB_Praktikanten der Datenbank,BPS.mdb einen neuen Datensatz erzeugen. Benutzen Sie folgendes SQL-Statement: INSERT INTO TB_Praktikanten (Name,Vorname, Matrikelnummer,[E-Mail],Telefon) VALUES ([Name],[Vorname],[Matrikelnummer],[E-Mail],[Telefon]); Lösung: lektion6b.htm und lektion6b.asp Komplette Anwendung für Praktikantenverwaltung: lektion5b.asplektion5b.asp
43
Internet-Datenbanken und ASP Löschen von Daten Das folgende Beispiel zeigt ein ASP-Script, welches Einträge aus der Tabelle TB_Firmen löscht. Die Datenbank BPS.mdb muß dafür im ODBC-Setup als BPS angemeldet sein. Die Index-Nummer der zu löschenden Firma, wird an der Kommandozeile des Scripts übergeben (siehe auch lektion5a.asp) Aufruf: lektion7a.asp Komplette Anwendung für Firmenverwaltung: lektion5a.asplektion5a.asp
44
Internet-Datenbanken und ASP Löschen von Daten <% on error resume next Rem ASP-Einfuehrung Lektion 7a - Beispiel für das Löschen von Daten key=request("Nr") Set DB = Server.CreateObject("ADODB.Connection") DB.Open "BPS" sql = "delete * from TB_Firmen where Key_Firma=" & key & ";" Set rs = DB.Execute(sql) 'response.write(sql) db.close response.redirect("lektion5a.asp") %> Lektion7a.asp
45
Internet-Datenbanken und ASP Löschen von Daten Aufgabe: Programmieren Sie ein ASP-Script, welches aus der Tabelle,TB_Praktikanten der Datenbank,BPS.mdb einen Datensatz löscht. Die Index-Nummer soll als Kommandozeilenparameter ?Nr= übergeben werden. Benutzen Sie folgendes SQL-Statement: delete * from TB_Praktikanten where Key_Praktikant=[Nr]; Lösung: lektion7b.asp Komplette Anwendung für Praktikantenverwaltung: lektion5b.asplektion5b.asp
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.