복붙노트

[SQL] 어떻게 클래식 ASP에서 매개 변수화 된 SQL 쿼리를 만드는 방법?

SQL

어떻게 클래식 ASP에서 매개 변수화 된 SQL 쿼리를 만드는 방법?

누군가가 수행 나에게 가장 간단한 방법을 보여줄 수있는 매개 변수가있는 SQL 쿼리 VBScript로 클래식 ASP를 사용하여?

컴파일 가능한 예는 가장 좋은 것입니다.

해결법

  1. ==============================

    1.의 ADODB.Command 개체를 사용합니다.

    의 ADODB.Command 개체를 사용합니다.

    with createobject("adodb.command")
        .activeConnection = application("connectionstring")
        .commandText = "select * from sometable where id=?"
        set rs = .execute( ,array(123))
    end with
    

    나는 대신 직접 ADODB를 사용하는 사용자 정의 DB 액세스 개체를 사용하여 권합니다. 이 테스트 용이성을 개선하고 / / 로깅을 debuging 프로파일에 대한 후크를 추가, 당신은 더 좋은 API를 구축 할 수 있습니다. 둘째는 요청이 class_terminiate 이벤트를 사용하여 오류를 암시 롤백의와의 거래를 범위에 추가 할 수 있습니다. Oure DB 접근 객체의 이벤트 다음 쿼리 API를

    call db.execute("update some_table set column=? where id=?", array(value, id))
    set rs = db.fetch_rs("select * from some_table where id=?", array(id))
    count = db.fetch_scalar("select count(*) from some_table where column > ?", array(value))
    
  2. ==============================

    2.난 당신이 매개 변수화 된 SQL 쿼리에 참조하고 있으리라 믿고있어. 이 경우, 다음 VBScript 코드는 다음과 같이 보일 것이다 :

    난 당신이 매개 변수화 된 SQL 쿼리에 참조하고 있으리라 믿고있어. 이 경우, 다음 VBScript 코드는 다음과 같이 보일 것이다 :

    Set adoCon = Server.CreateObject("ADODB.Connection")
    adoCon.Open "connectionstring"
    SET cmd = Server.CreateObject("ADODB.Command")
    cmd.ActiveConnection = adoCon
    cmd.CommandType= adCmdStoredProc 
    cmd.CommandText = "GetCustomerByFirstName" 
    
    cmd.Parameters.Append cmd.CreateParameter("@FirstName",adVarchar,adParamInput,50,"John")    
    
    Set Rec = cmd.Execute()
    While NOT Rec.EOF
      'code to iterate through the recordset
      Rec.MoveNext
    End While
    

    업데이트 : 당신은 상수가 인식 할 수 있도록하기위한 ADOVBS.inc 파일을 포함해야합니다.

    다음 링크는 다음과 같습니다 ADOVBS.inc

  3. ==============================

    3.adovbs.inc를 포함하는 또 다른 옵션은 ASP의 상단에 다음과 같은 형식 라이브러리에 대한 참조를 추가하는 것입니다. 아마 이것은 포함보다 더 나은 성능을 가지고 :

    adovbs.inc를 포함하는 또 다른 옵션은 ASP의 상단에 다음과 같은 형식 라이브러리에 대한 참조를 추가하는 것입니다. 아마 이것은 포함보다 더 나은 성능을 가지고 :

    <!--METADATA TYPE="TypeLib" NAME="ADODB Type Library" UUID="00000205-0000-0010-8000-00AA006D2EA4" FILE="C:\Program Files\Common Files\System\ado\msado15.dll" VERSION="2.5" -->
    

    다음은 몇 가지 형식 라이브러리의 목록입니다.

  4. from https://stackoverflow.com/questions/770419/how-to-make-a-parametrized-sql-query-on-classic-asp by cc-by-sa and MIT license