http://support.microsoft.com/kb/200190


참고: 이 문서에 나와 있는 샘플 Northwind 데이터베이스를 사용하는 경우에만 데이터베이스 (NWind.mdb) 인터넷 정보 서버 (IIS) 서버에서 Northwind 명명된 ODBC DSN 존재하고 NWind.mdb로 전달되는 경우 함수 됩니다 만듭니다. 

매개 변수화된 쿼리를 호출하기 위한 다음 두 가지가 있습니다.
  • 매개 변수 자리 표시자로 물음표 (?)를 사용하는 SQL 문을 지정하는 (예를 들어, SELECT 이름 FROM 테이블 WHERE 이름 =?)
  • Access 데이터베이스에 있는 쿼리 만들기 매개 변수를 포함합니다.
이 예제에서는 두 가지 방법 모두 설명하겠습니다.

시작하기 전에 다음 SQL 보기에서 빌드된 SampleQuery 라는 Northwind 데이터베이스의 액세스 쿼리 만들기:
SELECT * FROM Products WHERE ProductID = [@productid]
				
다음 예제 코드는 ADO 명령 개체를 사용하고 Parameters 컬렉션을 SampleQuery 라는 액세스 쿼리 호출합니다.

샘플 코드를 사용하려면 IIS를 실행하는 컴퓨터에서 가상 폴더에 ASP (Active Server Pages) 페이지를 만듭니다. 복사하여 ASP 코드를 ASP 페이지에 붙여 넣습니다. (\programFiles\CommonFiles\System\ADO 폴더에 있는 파일을 찾을 수 있습니다.)이 가상 폴더에 Adovbs.inc 파일을 복사하십시오.
<%@ Language=VBScript %>
<HTML>
<BODY>

<!--#include file=adovbs.inc -->

<%
Set objConn = Server.CreateObject("ADODB.Connection")
Set objCmd  = Server.CreateObject("ADODB.Command")
Set objRS   = Server.CreateObject("ADODB.Recordset")

objConn.Open "dsn=northwind;"

objRS.CursorType = adOpenForwardOnly
objRS.LockType = adLockOptimistic
                
Set objCmd.ActiveConnection = objConn

'If a SQL statement with question marks is specified, then the
'CommandType is adCmdText.  If a query name is specified, then
'the CommandType is adCmdStoredProc.

objCmd.CommandText = "SampleQuery"
objCmd.CommandType = adCmdStoredProc

'Create the parameter and populate it.

Set objParam = objCmd.CreateParameter("@productid" , adInteger, adParamInput, 0, 0)
objCmd.Parameters.Append objParam

objCmd.Parameters("@productid") = 15  'Return the product with ProductID = 15

'Open and display the Recordset.

objRS.Open objCmd
%>
<table border=1 cellpadding=2 cellspacing=2>
<tr>
<%
For I = 0 To objRS.Fields.Count - 1
  Response.Write "<td><b>" & objRS(I).Name & "</b></td>"
Next
%>
</tr>
<%
Do While Not objRS.EOF
  Response.Write "<tr>"
  For I = 0 To objRS.Fields.Count - 1
    Response.Write "<td>" & objRS(I) & "</td>"
  Next
  Response.Write "</tr>"
  objRS.MoveNext
Loop
%>
</table>

<%
objRS.Close
objConn.Close
Set objRS = Nothing
Set objCmd = Nothing
Set objConn = Nothing
%>
</BODY>
</HTML>
				
매개 변수 자리 표시자로 물음표 함께 SQL 문을 사용하려면 같은 샘플 코드를 사용하지만 다음 예제와 같이 CommandText 및 CommandType 속성을 업데이트할:
objCmd.CommandText = "SELECT * FROM Products WHERE ProductID = ?"
objCmd.CommandType = adCmdText

+ Recent posts