ASP (Active Server Pages) — один из инструментов, предложенных Microsoft для разработки интернет-приложений. Соединение между ASP и базой данных обычно достигается через ADO (Active Data Object), как сообщил журнал «Computer World» от 20 марта 2000 г. Как было представлено. В статье «Использование ASP для работы с базой данных SQL Server» ADO может полностью поддерживать Microsoft SQL Server, но существуют некоторые трудности со службами баз данных ORACLE, которые более широко используются и имеют более сложные механизмы, если вы хотите выполнить некоторые простые функции запросов. Если вы хотите лучше использовать уникальные функции базы данных ORACLE, такие как STORED PROCEDURE, STORED FUNCTION и т. д., вам необходимо использовать другой мощный инструмент для доступа к службам базы данных ORACLE с использованием ASP — Oracle Object для OLE. Сервер объектов ORACLE (Сервер объектов Oracle). В этой статье на примере объясняется, как использовать элементы управления, предоставляемые объектным сервером ORACLE в ASP, для получения доступа к базе данных ORACLE, а также обсуждается, как поддерживать ограничения целостности сетевой базы данных.
----Oracle Object для OLE — это крайне необходимый продукт, разработанный ORACLE для клиентского доступа к базам данных. Он основан на Windows 95/98/NT и доступен всем OLE-совместимым приложениям и языкам программирования ORACLE. такие как ASP, Visual Basic extra97 и т. д., объект Oracle для OLE включает сервер объектов ORACLE (сервер объектов Oracle), управление данными ORCLE (управление данными Oracle) и библиотеку классов объектов ORACLE (библиотека классов объектов Oracle для OLE C++) и еще три продукта.
---- По сравнению с ADO, объектный сервер ORACLE представляет собой продукт, предназначенный для разработки приложений баз данных ORACLE. Он имеет следующие преимущества:
---- (1) Соединение с сервером базы данных работает эффективно. Потому что ADO подключается к серверу базы данных через ODBC, а объектный сервер ORACLE подключается к серверу базы данных через SQL*NET ORACLE.
---- (2) Можно лучше использовать уникальные функции базы данных ORACLE. Например, ХРАНИМАЯ ПРОЦЕДУРА, СОХРАНЕННАЯ ФУНКЦИЯ, ПАКЕТ или Множественный курсор.
---- Этот пример представляет собой небольшую программу для запроса и ввода адресных книг. Пользователи могут запрашивать таблицу адресной книги через браузер или вводить свою собственную информацию для запроса других.
----Структура таблицы адресной книги следующая:
Имя Нулевой Тип?
------------------------------- -------- ----
ИМЯ НЕ NULL CHAR(8)
АДРЕС СИМВОЛ(20)
ТЕЛЕФОННЫЙ СИМВОЛ(20)
ЭЛЕКТРОННАЯ ПОЧТА VARCHAR2(30)
---- Сначала: настройте среду:
----Установите на WEB-сервер следующее программное обеспечение и настройте его:
---- (1)Базовый веб-сервер (ВЕБ-СЕРВЕР) и ASP и другое программное обеспечение
---- (2)Объект Oracle для OLE2.x
---- (3) Клиент SQL*Net или Клиент Oracle Net8 8. После установки с помощью Sql*Net Easy Configuration создайте псевдоним базы данных (Псевдоним базы данных), который является псевдонимом, используемым ASP для подключения к базе данных.
---- два. Реализация функции
---- (1) Запрос: используйте ASP для получения данных из таблицы адресной книги базы данных (TSB1) и отображения данных на экране. Ключом к выполнению запроса является определение успешности подключения к базе данных. Сам объектный сервер ORACLE имеет механизм контроля ошибок, который может сообщать об ошибках подключения к базе данных. Конкретные процедуры следующие:
<HTML>
<tile>программа запроса</title>
<ТЕЛО>
<%
при ошибке продолжить дальше
'Подключаемся к базе данных
set orasession=createobject
("OracleInprocServer.XOraSession")
установите oradatabase=orsession.
dbopendatabase("axp03","Скотт/тигр",0)
'Обработка ошибок
если номер ошибки >0, то
response.write"< h4 >asp контроль ошибок</h4 >"
response.write"asp error source:"&err.source &"< br >"
response.write"код ошибки asp:"&err.number&"< br >"
response.write"asp error error:"&err.description&"< br >"
ошибка.очистить
response.write"< h4 >ORACLE OLE Error Control</h4 >"
response.write"Код ошибки ORACLE:
"&OraSession.LastServerErr&"< br >"
response.write"Описание ошибки ORACLE:
"&OraSession.LastServerErrText&"< br >"
еще
'Запрос
sql="выбрать * из tsb1"
set oradynaset=oradatabase.dbcreatedynaset(sql,0)
response.write"< h3 >result</h3 >"
response.write"< граница таблицы=5>< tr >"
для i = 0 до oradinaset.fields.count-1
ответ.write"<td>"
response.write oradynaset.fields(i).name & " "
ответ.write"</td >"
следующий
ответ.write"</tr >"
делать до oradinaset.eof
ответ.write"<tr>"
для i = 0 до oradinaset.fields.count-1
ответ.write"<td>"
response.write oradynaset.fields(i).value
ответ.write"</td >"
следующий
ответ.write"</tr >"
oradynaset.dbmovenext
петля
response.write"< /table >"
'Закрываем базу данных
oradatabase.close
установить orasession=ничего
конец, если
%>
</тело>
</html >
---- Ниже приводится изображение результата запроса программы:
Адресная книга
ИМЯ АДРЕС ТЕЛЕФОН ЭЛЕКТРОННАЯ ПОЧТА
Чжан Лин, № 5, улица Хубэй, город Мааньшань, 0555-2887765 [email protected]
Линь Сян № 9, Хунань Роуд, город Мааньшань, 0555-2223856 [email protected]
№ 504, корпус 4, горнодобывающая дорога Дэн Гохун, 0555-2474748 [email protected]
Комната 507, корпус 7, Циндаоский океанический университет, Личэн 0464-32456678 [email protected]
№ 807, корпус 7, горнодобывающее сообщество Ван Гозай, 0555-3445454 [email protected]
№ 405, дом 17, Хунци Саут Роуд, Дин Ган 0555-2883721 [email protected]
№ 607, корпус 7, улица Баоцзянси, 0554-4566777 [email protected]
---- (2) Вставка собственной информации: используйте ASP для вставки данных, предоставленных пользователем в браузере, в таблицу адресной книги базы данных (TSB1). База данных ORACLE имеет набор механизмов ограничения целостности, поэтому процесс вставки. Это не только просто. Эффективно вставляйте данные в таблицу и проверяйте ограничения целостности. Данные, не соответствующие требованиям, будут отказано во вставке. Если обработка не учтена в программе, программа будет прервана из-за ошибки. сообщается сервером базы данных во время выполнения. Объект ERR в ASP может сообщать об источнике ошибки, коде ошибки, описании ошибки и т. д. и может привести программу к обработке ошибки.
---- Ниже приведены программы: одна — Insert.htm, которая представляет собой интерфейс ввода, позволяющий пользователям вводить собственную информацию, а другая — Insert.asp, которая отвечает за вставку введенной пользователем информации в базу данных и выполнение ошибок. проверка.
Вставить.htm:
<html>
<голова>
< мета http-equiv="Язык контента"
содержание="zh-cn" >
< мета http-equiv="Тип контента"
content="text/html; charset=gb2312" >
<meta name="GENERATOR" content=
«Microsoft FrontPage 4.0» >
<meta name="ProgId" content=
"FrontPage.Editor.Document" >
<title>Пожалуйста, оставьте свою информацию</title>
</ / голова >
<тело>
< p align="center" >Пожалуйста, введите свою информацию</ /p >
<form Method="post" action="insert.asp" >
Имя:
< input type="text" name="name" size="8" > < br >
адрес:
< input type="text" name="address" size="20" > < br >
Телефон:
< input type="text" name="phone" size="20" > < br >
ЭЛЕКТРОННАЯ ПОЧТА: < input type="text" name="email" size="20" > < br >
< input type="submit" value="OK" >
< input type="reset" value="Cancel" >< br >
</форма>
</тело>
</html >
---- Ниже приведен интерфейс пользовательского ввода:
Пожалуйста, введите свое информационное имя:
адрес:
Телефон:
ЭЛЕКТРОННАЯ ПОЧТА:
Вставить.asp:
<HTML>
<ТЕЛО>
<%
'Подключаемся к базе данных
set orasession=createobject
("OracleInprocServer.XOraSession")
установите oradatabase=orsession.
dbopendatabase("axp03","Скотт/тигр",0)
'Преобразование введенной пользователем информации в операторы SQL
sql="вставить в значения tsb1
(" &chr(39)&request("имя")&chr(39) &","_
&chr(39)&request("АДРЕС")&chr(39)&","_
&chr(39) & request("телефон")&chr(39) &","_
&chr(39)&request("EMAIL")&chr(39)&")"
'Запускаем оператор вставки SQL
oradatabase.dbEXECUTESQL(sql)
'Проверить наличие ошибок нарушения ограничений целостности
ЕСЛИ НОМЕР ОШИБКИ >0, ТО
response.write"< h4 >asp контроль ошибок</h4 >"
response.write"asp error source:"&err.source &"< br >"
response.write"код ошибки asp:"&err.number&"< br >"
response.write"asp error error:"&err.description&"< br >"
ЕЩЕ
'Вставка завершена, возврат
response.write "Вставка завершена, < a href=insert.htm > возвращает... </a >"
конец, если
%>
</тело>
</html >
----Выше приведены некоторые из моих опытов использования инструментов ASP для перемещения исходной информации из базы данных ORACLE в интернет-приложения. Пример очень простой и предназначен для иллюстрации принципа. Я также использовал STORED PROCEDURE, STORED FUNCTION и PACKAGE. Подождите, пока уникальные функции ORACLE ускорят и повысят эффективность. Надеюсь, это вдохновит всех, пишите, чтобы общаться друг с другом.