ASP(Active Server Pages)는 Microsoft가 인터넷 응용 프로그램 개발을 위해 제안한 도구 중 하나이며, 2000년 3월 20일자 "Computer World"에서 소개된 바와 같이 ASP와 데이터베이스 간의 연결은 일반적으로 ADO(Active Data Object)를 통해 이루어집니다. "ASP를 사용하여 SQL Server 데이터베이스 작동" 기사에서 ADO는 Microsoft SQL Server를 완벽하게 지원할 수 있지만 더 널리 사용되고 더 복잡한 메커니즘을 사용하는 ORACLE 데이터베이스 서비스에는 몇 가지 간단한 쿼리 기능을 만드는 데 몇 가지 어려움이 있습니다. , ADO로 충분합니다. STORED PROCEDURE, STORED FUNCTION 등과 같은 ORACLE 데이터베이스의 고유한 기능을 더 잘 활용하려면 ASP---Oracle Object for OLE를 사용하여 ORACLE 데이터베이스 서비스에 액세스하는 또 다른 강력한 도구를 사용해야 합니다. ORACLE 개체 서버(Oracle 개체 서버). 이 기사에서는 ASP의 ORACLE 개체 서버가 제공하는 컨트롤을 사용하여 ORACLE 데이터베이스에 액세스하는 방법을 예제를 통해 설명하고 네트워크 데이터베이스의 무결성 제약 조건을 유지하는 방법에 대해 설명합니다.
----Oracle Object for OLE는 데이터베이스에 대한 클라이언트 액세스를 위해 ORACLE에서 개발한 매우 필요한 제품이며 Windows 95/98/NT를 기반으로 하며 모든 OLE 호환 응용 프로그램 및 프로그래밍 언어로 액세스할 수 있습니다. ASP, Visual Basic extra97 등과 같은 Oracle Object for OLE에는 ORACLE Object Server(Oracle Object Server), ORCLE Data Control(Oracle Data Control) 및 ORACLE Object Class Library(Oracle Objects for OLE C++ Class Library)가 포함됩니다. 그리고 다른 세 가지 제품.
---- ADO와 비교하여 ORACLE 개체 서버는 ORACLE 데이터베이스 응용 프로그램 개발 전용 제품입니다.
---- (1) 데이터베이스 서버와의 연결이 효율적으로 이루어집니다. ADO는 ODBC를 통해 데이터베이스 서버에 연결하고, ORACLE 객체 서버는 ORACLE의 SQL*NET을 통해 데이터베이스 서버에 연결하기 때문입니다.
---- (2) ORACLE 데이터베이스 고유의 기능을 보다 잘 활용할 수 있습니다. 저장 프로시저, 저장 기능, 패키지 또는 다중 커서 등.
---- 이 예제는 주소록을 조회하고 입력하는 작은 프로그램입니다. 사용자는 브라우저를 통해 주소록 테이블을 조회하거나 다른 사람이 조회할 수 있도록 자신의 정보를 입력할 수 있습니다.
----주소록 테이블의 구조는 다음과 같습니다.
이름이 Null입니까?
------------------ -------- ----
이름이 NULL이 아님 CHAR(8)
주소 문자(20)
전화 문자(20)
이메일 VARCHAR2(30)
---- 첫 번째: 환경을 구성합니다.
----웹 서버에 다음 소프트웨어를 설치하고 구성합니다.
---- (1)기본 WEB 서버(WEB SERVER)와 ASP 및 기타 소프트웨어
---- (2)OLE2.x용 Oracle 개체
---- (3) SQL*Net 클라이언트 또는 Oracle Net8 클라이언트 8. 설치 후 Sql*Net Easy Configuration을 사용하여 ASP에서 데이터베이스에 연결하는 데 사용하는 별칭인 데이터베이스 별칭(Database Alias)을 만듭니다.
---- 둘. 기능 구현
---- (1) 쿼리: ASP를 사용하여 데이터베이스 주소록 테이블(TSB1)에서 데이터를 가져와 화면에 표시합니다. 쿼리의 핵심은 데이터베이스 연결이 성공했는지 확인하는 것입니다. ORACLE 개체 서버 자체에는 데이터베이스 연결 오류를 보고할 수 있는 오류 제어 메커니즘이 있습니다.
<HTML>
<tile>쿼리 프로그램</title>
<본문>
<%
오류 발생 시 다음 재개
'데이터베이스에 연결
orasession=createobject 설정
("OracleInprocServer.XOraSession")
oradatabase=orasession을 설정합니다.
dbopendatabase("axp03","스콧/타이거",0)
'오류 처리
err.number >0이면
response.write"< h4 >asp 오류 제어< /h4 >"
response.write"asp 오류 소스:"&err.source &"< br >"
response.write"asp 오류 코드:"&err.number&"< br >"
response.write"asp 오류 설명:"&err.description&"< br >"
오류가 발생했습니다.지우기
response.write"< h4 >ORACLE OLE 오류 제어< /h4 >"
response.write"ORACLE 오류 코드:
"&OraSession.LastServerErr&"< br >"
response.write"ORACLE 오류 설명:
"&OraSession.LastServerErrText&"< br >"
또 다른
'질문
sql="tsb1에서 * 선택"
oradynaset=oradatabase.dbcreatedynaset(sql,0) 설정
응답.쓰기"< h3 >결과< /h3 >"
response.write"< 테이블 테두리=5 >< tr >"
i=0에서 oradynaset.fields.count-1까지
응답.쓰기"<td>"
response.write oradynaset.fields(i).name & " "
응답.쓰기"< /td >"
다음
응답.쓰기"< /tr >"
oradynaset.eof까지 수행
응답.쓰기"<tr>"
i=0에서 oradynaset.fields.count-1까지
응답.쓰기"<td>"
response.write oradynaset.fields(i).value
응답.쓰기"< /td >"
다음
응답.쓰기"< /tr >"
oradynaset.dbmovenext
고리
응답.쓰기"< /테이블 >"
'데이터베이스를 닫습니다
oradatabase.close
orasession=아무것도 설정하지 않음
종료하면
%>
< /본문 >
< /html >
----다음은 프로그램의 쿼리 결과 이미지입니다.
주소록
이름 주소 전화 이메일
장링 마안산시 호북로 5호 0555-2887765 [email protected]
Lin Xiang No. 9 Hunan Road, Ma'anshan City 0555-2223856 [email protected]
덩궈훙 광산로 4호관 504호 0555-2474748 [email protected]
리청시 칭다오해양대학교 7호관 507호 0464-32456678 [email protected]
왕궈자이 광산 커뮤니티 7호관 807호 0555-3445454 [email protected]
딩강시 홍치남로 17호 405호 0555-2883721 [email protected]
바오장시로 7호 빌딩 607호 0554-4566777 [email protected]
---- (2) 자신의 정보 삽입: ASP를 사용하여 브라우저에서 사용자가 제공한 데이터를 데이터베이스 주소록 테이블(TSB1)에 삽입합니다. ORACLE 데이터베이스에는 일련의 무결성 제약 메커니즘이 있으므로 삽입 프로세스가 수행됩니다. 테이블에 데이터를 효율적으로 삽입하고 무결성 제약 조건을 확인하는 것은 간단하지 않습니다. 요구 사항을 충족하지 않는 데이터는 삽입이 거부됩니다. 프로그램에서 처리를 고려하지 않으면 오류로 인해 프로그램이 중단됩니다. 런타임 중에 데이터베이스 서버에 의해 보고됩니다. ASP의 ERR 개체는 오류 소스, 오류 코드, 오류 설명 등을 보고할 수 있으며 프로그램이 오류를 처리하도록 유도할 수 있습니다.
---- 다음은 프로그램인데, 하나는 사용자가 자신의 정보를 입력하는 입력 인터페이스인 insert.htm이고, 다른 하나는 사용자 입력 정보를 데이터베이스에 삽입하고 오류를 수행하는 역할을 하는 insert.asp이다. 확인 중입니다.
Insert.htm:
<html>
<머리>
< 메타 http-equiv="콘텐츠 언어"
콘텐츠="zh-cn" >
< 메타 http-equiv="콘텐츠 유형"
content="text/html; charset=gb2312" >
< 메타 이름="GENERATOR" 내용=
"마이크로소프트 프론트페이지 4.0" >
< 메타 이름="ProgId" 내용=
"FrontPage.Editor.Document" >
<title>정보를 남겨주세요</title>
</ /머리 >
<본문>
< p align="center" >정보를 입력해주세요</ /p >
< 양식 방법="포스트" 조치="insert.asp" >
이름:
< input type="text" name="name" size="8" > < br >
주소:
< 입력 유형="텍스트" 이름="주소" 크기="20" > < br >
전화:
< input type="text" name="phone" size="20" > < br >
이메일: < input type="text" name="email" size="20" > < br >
< 입력 유형="제출" 값="확인" >
< input type="reset" value="취소" >< br >
< /양식>
< /본문 >
< /html >
----다음은 사용자 입력 인터페이스입니다.
정보 이름을 입력하세요:
주소:
전화:
이메일:
삽입.asp:
<HTML>
<본문>
<%
'데이터베이스에 연결
orasession=createobject 설정
("OracleInprocServer.XOraSession")
oradatabase=orasession을 설정합니다.
dbopendatabase("axp03","스콧/타이거",0)
'사용자가 입력한 정보를 SQL문으로 변환
sql="tsb1 값에 삽입
(" &chr(39)&request("이름")&chr(39) &","_
&chr(39)&request("주소")&chr(39)&","_
&chr(39) & 요청("전화")&chr(39) &","_
&chr(39)&request("이메일")&chr(39)&")"
'SQL 삽입문 실행
oradatabase.dbEXECUTESQL(sql)
'무결성 제약 조건 위반 오류를 확인하세요.
오류 번호 >0인 경우
response.write"< h4 >asp 오류 제어< /h4 >"
response.write"asp 오류 소스:"&err.source &"< br >"
response.write"asp 오류 코드:"&err.number&"< br >"
response.write"asp 오류 설명:"&err.description&"< br >"
또 다른
'삽입 완료, 반환
response.write "삽입이 완료되었습니다. < a href=insert.htm >이 반환됩니다... < /a >"
종료하면
%>
< /본문 >
< /html >
----위는 원본 ORACLE 데이터베이스 정보를 인터넷 응용 프로그램으로 이동하기 위해 ASP 도구를 사용한 경험 중 일부입니다. 이 예는 매우 간단하며 STORED PROCEDURE, STORED FUNCTION 및 PACKAGE도 사용했습니다. ASP 프로그램은 ORACLE의 고유한 기능이 속도를 높이고 효율성을 향상시킬 때까지 기다립니다. 모두에게 영감을 줄 수 있기를 바라며, 서로 소통할 수 있는 글을 써주세요.