ASP (Active Server Pages) ist eines der von Microsoft vorgeschlagenen Tools zur Entwicklung von Internetanwendungen. Die Verbindung zwischen ASP und der Datenbank wird im Allgemeinen über ADO (Active Data Object) hergestellt, wie „Computer World“ am 20. März 2000 berichtete Im Artikel „Verwenden von ASP zum Betreiben einer SQL Server-Datenbank“ kann ADO Microsoft SQL Server vollständig unterstützen, es gibt jedoch einige Schwierigkeiten mit ORACLE-Datenbankdiensten, die weiter verbreitet sind und über komplexere Mechanismen verfügen, wenn Sie einige einfache Abfragefunktionen erstellen möchten Wenn Sie die einzigartigen Funktionen der ORACLE-Datenbank wie STORED PROCEDURE, STORED FUNCTION usw. besser nutzen möchten, müssen Sie ein anderes leistungsstarkes Tool verwenden, um über ASP auf ORACLE-Datenbankdienste zuzugreifen: Oracle Object für OLE. ORACLE Object Server (Der Oracle Object Server). In diesem Artikel wird anhand eines Beispiels erläutert, wie die vom ORACLE-Objektserver in ASP bereitgestellten Steuerelemente verwendet werden, um Zugriff auf die ORACLE-Datenbank zu erhalten, und es wird erläutert, wie die Integritätsbeschränkungen der Netzwerkdatenbank aufrechterhalten werden.
----Oracle Object für OLE ist ein dringend benötigtes Produkt, das von ORACLE für den Clientzugriff auf Datenbanken entwickelt wurde. Es basiert auf Windows 95/98/NT und kann von allen OLE-kompatiblen Anwendungen und Programmiersprachen aufgerufen werden. B. ASP, Visual Basic excus97 usw., Oracle Object für OLE umfasst ORACLE Object Server (Oracle Object Server), ORCLE Data Control (Oracle Data Control) und ORACLE Object Class Library (Oracle Objects für OLE C++-Klassenbibliothek). und weitere drei Produkte.
---- Im Vergleich zu ADO ist der ORACLE-Objektserver ein Produkt für die Entwicklung von ORACLE-Datenbankanwendungen. Es bietet die folgenden Vorteile:
---- (1) Die Verbindung mit dem Datenbankserver funktioniert effizient. Da ADO über ODBC eine Verbindung zum Datenbankserver herstellt und der ORACLE-Objektserver über SQL*NET von ORACLE eine Verbindung zum Datenbankserver herstellt.
---- (2) Kann die einzigartigen Funktionen der ORACLE-Datenbank besser nutzen. Wie zum Beispiel STORED PROCEDURE, STORED FUNCTION, PACKAGE oder Multiple Cursor.
---- Bei diesem Beispiel handelt es sich um ein kleines Programm zum Abfragen und Eingeben von Adressbüchern. Benutzer können die Adressbuchtabelle über den Browser abfragen oder ihre eigenen Informationen eingeben, damit andere sie abfragen können.
----Die Struktur der Adressbuchtabelle ist wie folgt:
Name Null? Typ
---------------- -------- ----
NAME NICHT NULL CHAR(8)
ADRESSE CHAR(20)
TELEFON CHAR(20)
E-MAIL VARCHAR2(30)
---- Zuerst: Konfigurieren Sie die Umgebung:
----Installieren Sie die folgende Software auf dem WEB-Server und konfigurieren Sie sie:
---- (1)Basis-WEB-Server (WEB-SERVER) und ASP und andere Software
---- (2)Oracle-Objekt für OLE2.x
---- (3) SQL*Net-Client oder Oracle Net8-Client 8. Verwenden Sie nach der Installation Sql*Net Easy Configuration, um einen Datenbankalias (Datenbankalias) zu erstellen. Dies ist der Alias, den ASP zum Herstellen einer Verbindung mit der Datenbank verwendet.
---- zwei. Funktionsrealisierung
---- (1) Abfrage: Verwenden Sie ASP, um die Daten aus der Datenbankadressbuchtabelle (TSB1) abzurufen und die Daten auf dem Bildschirm anzuzeigen. Der Schlüssel zur Abfrage besteht darin, festzustellen, ob die Verbindung zur Datenbank erfolgreich ist. Der ORACLE-Objektserver selbst verfügt über einen Fehlerkontrollmechanismus, der Datenbankverbindungsfehler melden kann.
<HTML>
<tile>Abfrageprogramm</title>
<KÖRPER>
<%
Bei Fehler als nächstes fortfahren
'Mit Datenbank verbinden
setze orasession=createobject
(„OracleInprocServer.XOraSession“)
setze oradatabase=orasession.
dbopendatabase("axp03","scott/tiger",0)
'Fehlerbehandlung
wenn Fehlernummer >0 dann
Response.write"< h4 >ASP-Fehlerkontrolle< /h4 >"
Response.write"asp error source:"&err.source &"< br >"
Response.write"asp error code:"&err.number&"< br >"
Response.write"ASP-Fehlerbeschreibung:"&err.description&"< br >"
irr.klar
Response.write"< h4 >ORACLE OLE Error Control< /h4 >"
Response.write"ORACLE-Fehlercode:
„&OraSession.LastServerErr&“< br >“
Response.write"ORACLE-Fehlerbeschreibung:
"&OraSession.LastServerErrText&"< br >"
anders
'Abfrage
sql="select * from tsb1"
set oradynaset=oradatabase.dbcreatedynaset(sql,0)
Response.write"< h3 >Ergebnis< /h3 >"
Response.write"< table border=5 >< tr >"
für i=0 zu oradynaset.fields.count-1
Response.write"<td>"
Response.write oradynaset.fields(i).name & " "
Response.write"< /td >"
nächste
Response.write"< /tr >"
tun, bis oradynaset.eof
Response.write"<tr>"
für i=0 zu oradynaset.fields.count-1
Response.write"<td>"
Response.write oradynaset.fields(i).value
Response.write"< /td >"
nächste
Response.write"< /tr >"
oradynaset.dbmovenext
Schleife
Response.write"< /table >"
'Schließen Sie die Datenbank
oradatabase.close
setze orasession=nichts
Ende wenn
%>
< /body >
< /html >
----Das Folgende ist das Abfrageergebnisbild des Programms:
Adressbuch
NAME ADRESSE TELEFON E-MAIL
Zhang Ling No. 5 Hubei Road, Ma'anshan City 0555-2887765 [email protected]
Lin Xiang No. 9 Hunan Road, Ma'anshan City 0555-2223856 [email protected]
Nr. 504, Gebäude 4, Deng Guohong Mining Road 0555-2474748 [email protected]
Raum 507, Gebäude 7, Qingdao Ocean University, Licheng 0464-32456678 [email protected]
Nr. 807, Gebäude 7, Wang Guozai Mining Community 0555-3445454 [email protected]
Nr. 405, Gebäude 17, Hongqi South Road, Ding Gang 0555-2883721 [email protected]
Nr. 607, Gebäude 7, Baojiangxi Road 0554-4566777 [email protected]
---- (2) Fügen Sie Ihre eigenen Informationen ein: Verwenden Sie ASP, um die vom Benutzer im Browser bereitgestellten Daten in die Datenbankadressbuchtabelle (TSB1) einzufügen. Die ORACLE-Datenbank verfügt über eine Reihe von Integritätsbeschränkungsmechanismen, also den Einfügungsprozess Es ist nicht einfach, die Daten effizient in die Tabelle einzufügen und die Integritätsbeschränkungen zu überprüfen. Das Einfügen von Daten, die die Anforderungen nicht erfüllen, wird abgelehnt. Wenn die Verarbeitung im Programm nicht berücksichtigt wird, wird das Programm aufgrund eines Fehlers unterbrochen vom Datenbankserver zur Laufzeit gemeldet. Das ERR-Objekt in ASP kann die Fehlerquelle, den Fehlercode, die Fehlerbeschreibung usw. melden und das Programm zur Fehlerverarbeitung veranlassen.
---- Im Folgenden finden Sie Programme: eines ist insert.htm, eine Eingabeschnittstelle, über die Benutzer ihre eigenen Informationen eingeben können, und das andere ist insert.asp, das für das Einfügen von Benutzereingabeinformationen in die Datenbank und das Ausführen von Fehlern verantwortlich ist Überprüfung.
Einfügen.htm:
<html>
<Kopf>
< meta http-equiv="Content-Language"
content="zh-cn" >
< meta http-equiv="Content-Type"
content="text/html; charset=gb2312" >
< meta name="GENERATOR" content=
„Microsoft FrontPage 4.0“ >
< meta name="ProgId" content=
„FrontPage.Editor.Document“ >
<title>Bitte hinterlassen Sie Ihre Informationen</title>
</ /head >
<Körper>
< p align="center" >Bitte geben Sie Ihre Daten ein</ /p >
< form method="post" action="insert.asp" >
Name:
< input type="text" name="name" size="8" > < br >
Adresse:
< input type="text" name="address" size="20" > < br >
Telefon:
< input type="text" name="phone" size="20" > < br >
E-MAIL: < input type="text" name="email" size="20" > < br >
< input type="submit" value="OK" >
< input type="reset" value="Cancel" >< br >
< /form>
< /body >
< /html >
----Das Folgende ist die Benutzereingabeschnittstelle:
Bitte geben Sie Ihren Informationsnamen ein:
Adresse:
Telefon:
E-MAIL:
Einfügen.asp:
<HTML>
<KÖRPER>
<%
'Mit Datenbank verbinden
setze orasession=createobject
(„OracleInprocServer.XOraSession“)
setze oradatabase=orasession.
dbopendatabase("axp03","scott/tiger",0)
'Vom Benutzer eingegebene Informationen in SQL-Anweisungen umwandeln
sql="in tsb1-Werte einfügen
(" &chr(39)&request("name")&chr(39) &","_
&chr(39)&request("ADDRESS")&chr(39)&","_
&chr(39) & request("phone")&chr(39) &","_
&chr(39)&request("EMAIL")&chr(39)&")"
'Führen Sie die SQL-Insert-Anweisung aus
oradatabase.dbEXECUTESQL(sql)
'Überprüfen Sie, ob Fehler bei der Verletzung von Integritätsbeschränkungen vorliegen
WENN FEHLERNUMMER >0 DANN
Response.write"< h4 >ASP-Fehlerkontrolle< /h4 >"
Response.write"asp error source:"&err.source &"< br >"
Response.write"asp error code:"&err.number&"< br >"
Response.write"ASP-Fehlerbeschreibung:"&err.description&"< br >"
ANDERS
„Einfügung abgeschlossen, zurück.“
Response.write „Einfügung abgeschlossen, < a href=insert.htm > gibt zurück... < /a >“
Ende wenn
%>
< /body >
< /html >
----Die oben genannten sind einige meiner Erfahrungen mit ASP-Tools zum Verschieben von Original-ORACLE-Datenbankinformationen in Internetanwendungen. Das Beispiel ist sehr einfach und soll das Prinzip veranschaulichen, in dem ich auch STORED PROCEDURE, STORED FUNCTION und PACKAGE verwendet habe Warten Sie, bis die einzigartigen Funktionen von ORACLE die Geschwindigkeit erhöhen und die Effizienz verbessern. Ich hoffe, es kann alle inspirieren. Bitte schreiben Sie, um miteinander zu kommunizieren.