ASP (Active Server Pages) es una de las herramientas propuestas por Microsoft para desarrollar aplicaciones de Internet. La conexión entre ASP y la base de datos generalmente se logra a través de ADO (Active Data Object), como informó "Computer World" el 20 de marzo de 2000. En el artículo "Uso de ASP para operar la base de datos de SQL Server", ADO puede ser totalmente compatible con Microsoft SQL Server, pero existen algunas dificultades con los servicios de bases de datos ORACLE que se utilizan más ampliamente y tienen mecanismos más complejos si desea realizar algunas funciones de consulta simples. , ADO es suficiente si desea utilizar mejor las funciones únicas de la base de datos ORACLE, como PROCEDIMIENTO ALMACENADO, FUNCIÓN ALMACENADA, etc., debe utilizar otra herramienta poderosa para acceder a los servicios de la base de datos ORACLE usando ASP---Oracle Object para OLE. Servidor de objetos ORACLE (El servidor de objetos Oracle). Este artículo explica a partir de un ejemplo cómo utilizar los controles proporcionados por el servidor de objetos ORACLE en ASP para lograr el acceso a la base de datos ORACLE y analiza cómo mantener las restricciones de integridad de la base de datos de la red.
----Oracle Object para OLE es un producto muy necesario desarrollado por ORACLE para el acceso de clientes a bases de datos. Está basado en Windows 95/98/NT y se puede acceder a él mediante todas las aplicaciones y lenguajes de programación ORACLE. como ASP, Visual Basic exceso97, etc., Oracle Object para OLE incluye ORACLE Object Server (Oracle Object Server), ORCLE Data Control (Oracle Data Control) y ORACLE Object Class Library (Oracle Objects for OLE C++ Class Library) y otros tres productos.
---- Comparado con ADO, el servidor de objetos ORACLE es un producto dedicado al desarrollo de aplicaciones de bases de datos ORACLE. Tiene las siguientes ventajas:
---- (1) La conexión con el servidor de la base de datos funciona de manera eficiente. Porque ADO se conecta al servidor de la base de datos a través de ODBC y el servidor de objetos ORACLE se conecta al servidor de la base de datos a través de SQL * NET de ORACLE.
---- (2) Puede utilizar mejor las funciones únicas de la base de datos ORACLE. Como PROCEDIMIENTO ALMACENADO, FUNCIÓN ALMACENADA, PAQUETE o Cursor múltiple.
---- Este ejemplo es un pequeño programa para consultar e ingresar libretas de direcciones. Los usuarios pueden consultar la tabla de la libreta de direcciones a través del navegador o ingresar su propia información para que otros la consulten.
----La estructura de la tabla de la libreta de direcciones es la siguiente:
Nombre ¿Nulo?
------------------------------- -------- ----
NOMBRE NO NULO CHAR(8)
CARACTERÍSTICA DE DIRECCIÓN(20)
CARACTERÍSTICAS DEL TELÉFONO(20)
CORREO ELECTRÓNICO VARCHAR2(30)
---- Primero: configurar el entorno:
----Instale el siguiente software en el servidor WEB y configúrelo:
---- (1) Servidor WEB básico (SERVIDOR WEB) y ASP y otro software
---- (2) Objeto Oracle para OLE2.x
---- (3) Cliente SQL*Net u Cliente Oracle Net8 8. Después de la instalación, utilice Sql*Net Easy Configuration para crear un alias de base de datos (Alias de base de datos), que es el alias utilizado por ASP para conectarse a la base de datos.
---- dos. Realización de funciones
---- (1) Consulta: utilice ASP para obtener los datos de la tabla de la libreta de direcciones de la base de datos (TSB1) y mostrar los datos en la pantalla. La clave para consultar es determinar si la conexión a la base de datos es exitosa. El propio servidor de objetos ORACLE tiene un mecanismo de control de errores que puede informar errores de conexión de la base de datos. Los procedimientos específicos son los siguientes:
<HTML>
<tile>programa de consulta</title>
<CUERPO>
<%
en caso de error reanudar siguiente
'Conectarse a la base de datos
establecer orasession=crearobjeto
("OracleInprocServer.XOraSession")
set oradabase=orasession.
dbopendatabase("axp03","scott/tigre",0)
'Manejo de errores
si número de error >0 entonces
respuesta.escribir"< h4 >control de errores asp< /h4 >"
respuesta.escribir"fuente de error asp:"&err.source &"< br >"
respuesta.escribir"código de error asp:"&err.número&"< br >"
respuesta.escribir"descripción del error asp:"&err.descripción&"< br >"
errar.claro
respuesta.escribir"< h4 >Control de errores ORACLE OLE< /h4 >"
respuesta.escribir "Código de error ORACLE:
"&OraSession.LastServerErr&"< br >"
respuesta.escribir "Descripción del error ORACLE:
"&OraSession.LastServerErrText&"< br >"
demás
'Consulta
sql="seleccionar * de tsb1"
establecer oradynaset=oradatabase.dbcreatedynaset(sql,0)
respuesta.escribir"< h3 >resultado< /h3 >"
respuesta.escribir"< borde de la tabla=5 >< tr >"
para i=0 a oradynaset.fields.count-1
respuesta.escribir"<td>"
respuesta.escribir oradynaset.fields(i).nombre & " "
respuesta.escribir"< /td >"
próximo
respuesta.escribir"< /tr >"
hacer hasta oradynaset.eof
respuesta.escribir"<tr>"
para i=0 a oradynaset.fields.count-1
respuesta.escribir"<td>"
respuesta.escribir oradynaset.fields(i).valor
respuesta.escribir"< /td >"
próximo
respuesta.escribir"< /tr >"
oradynaset.dbmovenext
bucle
respuesta.escribir"< /tabla >"
'Cerrar la base de datos
oradabase.cerrar
establecer sesión o = nada
terminar si
%>
< /cuerpo >
< /html >
----La siguiente es la imagen del resultado de la consulta del programa:
libreta de direcciones
NOMBRE DIRECCIÓN TELÉFONO CORREO ELECTRÓNICO
Zhang Ling No. 5 Hubei Road, ciudad de Ma'anshan 0555-2887765 [email protected]
Lin Xiang No. 9 Hunan Road, ciudad de Ma'anshan 0555-2223856 [email protected]
No. 504, Edificio 4, Carretera Minera Deng Guohong 0555-2474748 [email protected]
Sala 507, Edificio 7, Qingdao Ocean University, Licheng 0464-32456678 [email protected]
No. 807, Edificio 7, Comunidad Minera Wang Guozai 0555-3445454 [email protected]
No. 405, Edificio 17, Hongqi South Road, Ding Gang 0555-2883721 [email protected]
No. 607, Edificio 7, Baojiangxi Road 0554-4566777 [email protected]
---- (2) Inserte su propia información: utilice ASP para insertar los datos proporcionados por el usuario en el navegador en la tabla de la libreta de direcciones de la base de datos (TSB1). La base de datos ORACLE tiene un conjunto de mecanismos de restricción de integridad, por lo que el proceso de inserción. No solo es simple Insertar datos en la tabla de manera eficiente y verificar las restricciones de integridad. Se rechazará la inserción de datos que no cumplan con los requisitos. Si el procesamiento no se considera en el programa, el programa se interrumpirá debido a un error. informado por el servidor de la base de datos durante el tiempo de ejecución. El objeto ERR en ASP puede informar el origen del error, el código de error, la descripción del error, etc., y puede llevar al programa al procesamiento del error.
---- Los siguientes son programas, uno es insert.htm, que es una interfaz de entrada para que los usuarios ingresen su propia información, y el otro es insert.asp, que es responsable de insertar la información ingresada por el usuario en la base de datos y realizar errores. de cheques.
Insertar.htm:
<html>
<cabeza>
< meta http-equiv="Idioma-de-contenido"
contenido="zh-cn" >
< meta http-equiv="Tipo de contenido"
contenido="texto/html; juego de caracteres=gb2312" >
< meta nombre="GENERADOR" contenido=
"Microsoft FrontPage 4.0" >
< meta nombre="ProgId" contenido=
"FrontPage.Editor.Documento" >
<title>Por favor deja tu información</title>
</ /cabeza >
<cuerpo>
< p align="center" >Por favor introduce tu información</ /p >
< método de formulario = "publicar" acción = "insertar.asp" >
Nombre:
< tipo de entrada="texto" nombre="nombre" tamaño="8" > < br >
DIRECCIÓN:
< tipo de entrada="texto" nombre="dirección" tamaño="20" > < br >
Teléfono:
< tipo de entrada="texto" nombre="teléfono" tamaño="20" > < br >
CORREO ELECTRÓNICO: < tipo de entrada="texto" nombre="correo electrónico" tamaño="20" > < br >
< tipo de entrada="enviar" valor="Aceptar" >
< tipo de entrada="restablecer" valor="Cancelar" >< br >
< /formulario>
< /cuerpo >
< /html >
----La siguiente es la interfaz de entrada del usuario:
Por favor ingrese su nombre de información:
DIRECCIÓN:
Teléfono:
CORREO ELECTRÓNICO:
Insertar.asp:
<HTML>
<CUERPO>
<%
'Conectarse a la base de datos
establecer orasession=crearobjeto
("OracleInprocServer.XOraSession")
set oradabase=orasession.
dbopendatabase("axp03","scott/tigre",0)
'Transforma la información insertada por el usuario en declaraciones SQL
sql="insertar en valores tsb1
(" &chr(39)&request("nombre")&chr(39) &","_
&chr(39)&request("DIRECCIÓN")&chr(39)&","_
&chr(39) & solicitud("teléfono")&chr(39) &","_
&chr(39)&request("CORREO ELECTRÓNICO")&chr(39)&")"
'Ejecutar instrucción de inserción SQL
oradabase.dbEXECUTESQL(sql)
'Compruebe si hay errores de violación de restricciones de integridad
SI NÚMERO DE ERROR >0 ENTONCES
respuesta.escribir"< h4 >control de errores asp< /h4 >"
respuesta.escribir"fuente de error asp:"&err.source &"< br >"
respuesta.escribir"código de error asp:"&err.número&"< br >"
respuesta.escribir"descripción del error asp:"&err.descripción&"< br >"
DEMÁS
'Inserción completada, devolución
Response.write "Inserción completada, < a href=insert.htm > devuelve... < /a >"
terminar si
%>
< /cuerpo >
< /html >
---- Las anteriores son algunas de mis experiencias en el uso de herramientas ASP para mover información de la base de datos ORACLE original a aplicaciones de Internet. El ejemplo es muy simple y está destinado a ilustrar el principio. También utilicé PROCEDIMIENTO ALMACENADO, FUNCIÓN ALMACENADA y PAQUETE. el programa ASP. Espere a que las funciones únicas de ORACLE se aceleren y mejoren la eficiencia. Espero que pueda inspirar a todos, escriban para comunicarse entre sí.