소개
이 기사에서는 ASP 프로그래밍의 가장 기본적이고 중요한 부분인 "데이터베이스 파일 호출"에 대해 설명하고 ASP 프로그래밍에서 데이터베이스 파일 호출을 위한 몇 가지 기술에 대해 설명합니다.
ASP 소개
ASP(Active Server Pages)는 Microsoft가 1996년에 출시한 웹 애플리케이션 개발 기술입니다. Microsoft는 이를 "서버 스크립팅 환경"이라고 설명합니다. 동적인 대화형 고성능 웹 서버 애플리케이션을 실행합니다." 주요 기능은 동적 및 대화형 웹 서버 애플리케이션을 생성하기 위한 강력한 방법이나 기술을 제공하는 것입니다. 그 특징은 명령과 스크립트가 서버에서 해석되고 실행된 후 클라이언트 브라우저로 전송되는 내용이 단지 표준 HTML 페이지라는 것입니다. 장점은 프로그램 디자인이 간단하고 이해하기 쉽고, 편리하고 빠르다는 점입니다. ASP는 중국에서 널리 사용되고 있으며 상당수의 동적 웹사이트가 ASP 기술을 사용하고 있습니다.
시스템마다
ASP 데이터베이스 파일을 호출하기
위해 서로 다른 데이터베이스 드라이버를 설치할 수 있지만 일반 서버 시스템은 기본적으로 IIS4.0/5.0을 지원하므로 서버 시스템에는 최소한 Microsoft Access Driver, Microsoft ODBC for Oracle, SQL Server 등 3개의 데이터베이스 드라이버가 있어야 합니다. . 따라서 서버 시스템은 Access, Oracle 및 SQL Server와 같은 최소한 세 가지 데이터베이스를 사용하여 ASP 웹 페이지 데이터베이스 설계에 참여할 수 있습니다. Microsoft Access 97/2000은 Microsoft Office 시리즈 중 하나에 속하며 인터페이스도 Office 시리즈 소프트웨어와 유사하므로 기본적으로 학습에 장애가 없습니다. 따라서 이 기사에서는 초보자의 관점에서 ASP 프로그래밍을 위한 Access 데이터베이스 파일을 사용합니다. .Access 응용 프로그램을 통해 그림 1과 같이 데이터베이스 파일(friend.mdb)을 만듭니다.
그림 1
그런 다음 ASP 프로그래밍에서 데이터베이스 파일을 호출하는 방법에는 두 가지가 있습니다. 하나는 "제어판"의 "데이터 원본(ODBC)"에서 직접 설정하는 것이고, 다른 하나는 데이터베이스를 프로그래밍하고 호출하는 것입니다. 상대 경로 파일을 사용하는 경우 이 방법은 추가 구성 없이 모든 서버에 적용할 수 있습니다. 첫 번째 방법이 더 간단하고 안전하며, 이 기사에서는 두 번째 방법에 대해 설명합니다.
다음은 ASP 프로그래밍에서 데이터베이스 파일의 테이블 레코드를 읽는 일반적인 방법입니다.
01: <HTML><BODY>
02: <!--#include file="adovbs.inc"-->
03:<%
04: 'ASP의 연결 개체를 사용하여 데이터베이스를 엽니다. 위 그림에서 데이터베이스 파일은 <Friend.mdb>입니다.'
05: 희미한 objConn
06: objConn=Server.CreateObject("ADODB.Connection") 설정
07: objConn.ConnectionString="공급자=Microsoft.Jet.OLEDB.4.0;"
08: "데이터 소스=" & Server.MapPath("Friend.mdb")
09: objConn.Open
10: "데이터" 테이블의 레코드를 읽고 레코드 세트 개체에 저장합니다.
11: 희미한 objRS
12: objRS=Server.CreateObject("ADODB.Recordset") 설정
13: ObjRS.Open "데이터",objConn,adOpenKeyset,adLockOptimistic,adCmdTable
14: '현재 포인터가 가리키는 레코드를 브라우저에 표시
15: objRS가 아닌 경우.
16: 응답."Number:"&objRS("Number")& "<BR>" 쓰기
17: 응답 "이름:"&objRS("이름")& "<BR>"을 작성하세요.
18: 응답 "Gender:"&objRS("Gender")& "<BR>"를 작성하세요.
19:다른
20: Response.Write "데이터베이스 끝에 도달했으며 일치하는 모든 레코드가 표시되었습니다."
21: 종료 조건
22: '데이터베이스 연결을 닫고 개체 인스턴스를 해제합니다.
23: ObjRS 닫기
24: objRS=아무것도 설정하지 않음
25: ObjConn.Close
26: objConn=아무것도 설정하지 않음
27: %>
28: </BODY></HTML>
위 코드는 ASP 프로그래밍에서 Access 데이터베이스 파일을 여는 설계 단계입니다.
데이터베이스 파일 호출 팁
(1) 실제로 어떤 Access 데이터베이스로 전환하더라도 데이터베이스 연결을 열고 테이블 레코드를 읽는 단계는 동일합니다. 변수는 데이터베이스 파일 이름과 테이블 이름입니다. , 따라서 위 프로그램은 함수 형식으로 3~13행을 다시 작성하고 ADOFunctions.asp와 같은 파일에 저장할 수 있습니다. 나중에 데이터베이스 파일을 열려면 ADOFunctions.asp 파일을 포함하십시오. 코드는 다음과 같습니다:
<%
희미한 objConn
'Filename 변수는 데이터베이스 파일 이름이고, Table Name 변수는 테이블 이름입니다. Function GetRecordset(FileName,TableName)
'ASP의 연결 개체를 사용하여 데이터베이스를 엽니다. Set objConn=Server.CreateObject("ADODB.Connection")
objConn.ConnectionString="공급자=Microsoft.Jet.OLEDB.4.0;"
"데이터 소스=" & Server.MapPath("파일 이름")
objConn.Open
'테이블의 레코드를 읽고 레코드 세트 개체 "objRS"에 저장합니다.
희미한 물체RS
objRS=Server.CreateObject("ADODB.Recordset") 설정
ObjRS.Open TableName,objConn,adOpenKeyset,adLockOptimistic,adCmdTable
기능 종료
%>
위 코드에서 볼 수 있듯이 함수 이름은 GetRecordSet이고 반환 값은 테이블 레코드를 저장하는 레코드 집합 개체 인스턴스입니다. 파일 이름은 ADOFunctions.asp입니다. 이제 이 파일을 사용하여 모든 데이터베이스 파일의 레코드를 읽을 수 있습니다. 예를 들어, 데이터베이스를 읽는 프로그래밍은 다음과 같이 단순화될 수 있습니다.
<HTML> <BODY>
<! --#파일 포함="adovbs.inc"-->
<! --#include 파일="ADOFunctions.asp"-->
<%
'GetRecordset 함수를 호출하여 레코드 세트 객체 인스턴스를 얻은 다음 이를 objRS 변수에 할당합니다.
희미한 물체RS
set objRS=GetRecordset("Friend.mdb","data")
'현재 포인터가 가리키는 레코드를 브라우저에 표시If Not objRS.EOF Then
Response.Write "Number:"&objRS("Number")& "<BR>"
Response.Write "Name:"&objRS("Name")& "<BR>"
Response.Write "Gender:"&objRS("Gender")&"<BR>"
또 다른
Response.Write "데이터베이스 끝에 도달했으며 일치하는 모든 레코드가 표시되었습니다."
종료 조건
'데이터베이스 연결을 닫고 개체 인스턴스 ObjRS를 해제합니다.
objRS=아무것도 설정하지 않음
ObjConn.닫기
objConn=아무것도 설정하지 않음
%>
</BODY></HTML>
따라서 이 코드 Set objRS=GetRecordset("Friend.mdb", "data")에서 데이터베이스 이름과 테이블 이름을 변경하기만 하면 모든 Access 데이터베이스 파일을 호출할 수 있습니다. , 또한 후속 데이터베이스에 있는 각 테이블의 필드 이름이 일치해야 한다는 점에 주의해야 합니다.
(2) 또한 어떤 Access 데이터베이스로 전환하든 데이터베이스 연결을 열고 테이블 레코드를 필터링하는 단계는 동일합니다. 변수에는 SQL 문(예: "SELECT * FROM data"), 이름이 포함됩니다. 데이터베이스 파일의 이름과 테이블의 이름입니다. 따라서 같은 방법으로 이 세 가지 변수를 함수의 매개변수로 사용하고 GetSQLRecordset 함수를 작성하여 ADOSQLFunctions.asp라는 파일로 저장하면 됩니다. 프로그램 앞쪽에 GetSQLRecordset을 사용할 수 있습니다. 이 함수는 데이터베이스 연결을 열고 테이블 레코드도 필터링합니다. 이 함수의 반환 값은 SQL 문을 따르는 레코드 세트 개체 인스턴스를 저장합니다.
코드는 다음과 같습니다:
<%
희미한 objConn
희미한 GetSQLRecordset
함수 GetSQLRecordset(strSQL,파일 이름,테이블 이름)
'ASP의 연결 개체를 사용하여 데이터베이스를 엽니다.
Set objConn=Server.CreateObject("ADODB.Connection")
objConn.ConnectionString="공급자=Microsoft.Jet.OLEDB.4.0;"
"데이터 소스=" & Server.MapPath("파일 이름")
objConn.Open
'테이블에서 SQL문과 일치하는 레코드를 읽어 레코드 세트 객체에 저장합니다.
GetSQLRecordset=Server.CreateObject("ADODB.Recordset") 설정
GetSQLRecordset.Open_ strSQL,objConn,adOpenKeyset,adLockOptimistic,adCmdText
기능 종료
%>
위 코드의 함수 이름은 GetSQLRecordset이고 파일 이름은 ADOSQLFunctions.asp입니다.
이제 이 파일을 사용하여 모든 Access 데이터베이스에 대한 연결을 호출하고 동시에 테이블 레코드를 필터링할 수 있습니다. Friend.mdb 파일을 예로 들면, 테이블 데이터의 모든 레코드를 나열합니다. 프로그램 코드는 다음과 같습니다.
<HTML> <BODY>
<!--#include 파일="adovbs.inc"-->
<!--#include 파일="ADOSQLFunctions.asp"-->
<%
희미한 물체RS
Set objRS=GetSQLRecordset("SELECT 번호, 이름, 성별 from_ data", "Friend.mdb", "data")
objRS.EOF가 아닌 동안 수행
Response.Write "Number:"&objRS("Number")&"<BR>"
Response.Write "Name:"&objRS("Name")&"<BR>"
Response.Write "Gender:"&objRS("Gender")&"<BR>"
루프
objRS.
닫기
objRS=아무것도 설정하지 않음
ObjConn.닫기
objConn=아무것도 설정하지 않음
%>
</BODY></HTML>
요약
ASP 프로그래밍에서 기능을 잘 활용하면 프로그램 코드가 간단하고 명확해지며 읽기 구조도 쉽게 유지될 수 있습니다. 반복적이고 복잡한 코드. 위 상황과 마찬가지로 단순히 데이터베이스에 접속만 하는 경우에는 첫 번째 상황을 사용하고 ADORecordset.asp 파일을 포함시키거나 데이터베이스 내 특정 테이블의 레코드를 필터링하거나 다른 SQL 문을 사용하려면 두 번째 상황을 사용하세요. 이 경우 ADOSQLRecordset.asp 파일을 로드하면 됩니다.