사용자 인증 프로그램을 작성할 때 ASP를 사용하여 SQL 문을 호출하여 데이터 테이블의 조건과 일치하는 레코드가 있는지 검색한 후 ASP를 사용하여 관련 처리를 수행하는 것은 쉽습니다.
모든 길은 로마로 통한다! 물론 SQL SERVER 데이터베이스의 저장 프로시저를 사용하여 이 기능을 쉽게 구현할 수도 있습니다. 상대적으로 복잡하기는 하지만 저장 프로시저가 데이터베이스에서 컴파일된 프로그램이고 ASP를 사용하여 여기에 사용되는 다양한 매개 변수를 올바르게 전달하기만 하면 되므로 효율성 향상은 분명합니다.
또한 이 기사에서는 간단한 예제를 통해 ASP에서 매개변수를 사용하여 저장 프로시저를 호출하는 방법을 주로 소개하려고 합니다. 그로부터 더 많은 영감을 얻을 수 있기를 바랍니다.
첫 번째 단계는 userinfo 데이터 테이블을 생성하는 것입니다.
ID int(4)는 null이 아닙니다.
전체 이름 varchar(50)은 null이 아닙니다.
비밀번호 varchar(20)은 null이 아닙니다.
nikename varchar(50) not null
두 번째 단계는 usercheck 저장 프로시저를 만드는 것입니다.
CREATE 프로시저 사용자 확인
@infullname varchar(50),
@inpassword varchar(50),
@outcheck char(3) 출력
~처럼
존재하는 경우( fullname=@infullname 및 비밀번호=@inpassword 인 userinfo에서 * 선택)
@outcheck='yes'를 선택하세요.
또 다른
select @outcheck='no'
참고: 여기서는 세 개의 매개변수가 있는 저장 프로시저가 생성됩니다. 첫 번째 매개변수 @infullname은 입력 매개변수(사용자 이름)이고 두 번째 매개변수인 @inpassword도 세 번째 매개변수입니다. @outcheck 매개변수는 출력 매개변수입니다(이 사용자가 존재하는지 여부). 출력 매개변수를 정의할 때 데이터 유형 뒤에 "OUTPUT"이라는 단어를 추가해야 합니다.
그런 다음 처음 두 개의 입력 매개변수를 사용하여 SQL 문에 자격을 갖춘 사용자가 있는지 검색합니다. 있는 경우 출력 매개변수의 값은 "yes"이고, 그렇지 않으면 "no"입니다.
세 번째 단계는 ASP 프로그램을 작성하고 저장 프로시저를 호출하는 것입니다.
<%
'양식 제출 플래그
if request("ok")=1 then
'데이터베이스 연결 설정
Set Comm=Server.CreateObject("ADODB.Command")
Comm.ActiveConnection="DSN=localserver;UID=sa;PWD=;Database=chaiwei"
'통신 개체와 저장 프로시저 연결을 설정합니다. 4는 연결 유형이 저장 프로시저임을 의미합니다.
Comm.CommandText="사용자 확인"
Comm.CommandType=4
'이름이 p1인 통신 개체의 매개변수 메서드를 만듭니다. p1 컬렉션 'fullname'에 첫 번째 매개변수 fullname을 추가합니다. '200이라는 첫 번째 매개변수의 이름입니다. 매개변수 유형 varchar 유형 '1 입력에 대한 매개변수 흐름, 입력은 1, 출력은 2
'50 매개변수 길이 50
'request("fullname") 매개변수 초기값 지정
Set p1=Comm.CreateParameter("fullname",200,1,50,request("fullname"))
Comm.Parameters.Append p1
'이름이 p1인 통신 개체의 매개변수 메서드를 만듭니다. p1 컬렉션에 두 번째 매개변수 비밀번호를 추가합니다.
'구체적인 내용은 위와 같습니다.
Set p1=Comm.CreateParameter("password",200,1,20,request("password"))
Comm.Parameters.Append p1
'이름이 p1인 통신 개체의 매개변수 메서드를 만듭니다. p1 컬렉션에 세 번째 매개변수 검사를 추가합니다.
'129 매개변수 유형 char 유형
'2 출력까지의 매개변수 흐름
'3 매개변수 길이 3
p1=Comm.CreateParameter("check",129,2,3) 설정
Comm.Parameters.Append p1
'저장 프로시저 실행
통신 실행
'결과 제안 및 처리
comm("check")="yes"이면
response.write "시스템에 오신 것을 환영합니다! 사용자 이름:" & comm("fullname") & "비밀번호:" & comm("password")
또 다른
response.write "죄송합니다. 아직 등록하지 않으셨습니다!"
end if
'연결 해제
통신=아무것도 설정하지 않음
else
'부분을 형성
%>