아래에서는 ASP에서 SQL 주입 공격을 방지하는 또 다른 방법을 소개합니다. 이 방법은 ASP에만 적용 가능한 것이 아니라 실제로 ADO 개체 모델을 사용하여 데이터베이스와 상호 작용하는 모든 언어에서 사용할 수 있습니다. SQL 주입을 방지하는 데는 ADO 기반 개체 모델 접근 방식이 더 적합할 수 있습니다. 자, 더 이상 고민하지 말고 코드를 살펴보겠습니다
Dim conn,cmd,pra
set conn=server.createobject("adodb.connection")
conn.Open "…………" '여기서 데이터베이스 연결 단어는 생략했습니다
set cmd=server.createobject("adodb.Command")
set pra=server.createobject("adodb.Parameter")
cmd.ActiveConnection = conn
cmd.CommandText = "뉴스 세트 제목 업데이트? 여기서 id =?
cmd.CommandType = adCmdText
Set pra = cmd.CreateParameter("title", adVarWChar, adParamInput, 50, "1'2'3" )
cmd.Parameters.Append pra
Set pra = cmd.CreateParameter("id", adInteger, adParamInput, , 10)
cmd.Parameters.Append pra
cmd .Execute
뉴스 테이블의 id 필드는 Integer 유형이고, 제목 필드는 nvarchar(50) 유형입니다. 실행 결과는 제목 필드의 내용을 변경하는 것입니다. 뉴스 테이블의 ID 필드가 10인 레코드를 "1'2'3 "으로 변경합니다.