다음을 통해 공유


Updategrams에 매개 변수 전달(SQLXML 4.0)

Updategram은 템플릿입니다. 따라서 매개 변수를 전달할 수 있습니다. 템플릿에 매개 변수를 전달하는 방법에 대한 자세한 내용은 Updategram 보안 고려 사항(SQLXML 4.0)을 참조하세요.

Updategram을 사용하면 NULL을 매개 변수 값으로 전달할 수 있습니다. NULL 매개 변수 값을 전달하려면 특성을 지정 nullvalue 합니다. 특성에 nullvalue 할당된 값은 매개 변수 값으로 제공됩니다. Updategram은 이 값을 NULL로 처리합니다.

비고

In <sql:header><updg:header>, you should specify the nullvalue unqualified; 반면, in <updg:sync>, you specify the nullvalue as qualified (예: updg:nullvalue).

예시

다음 예제를 사용하여 작업 샘플을 만들려면 SQLXML 실행 요구 사항 예제에 지정된 요구 사항을 충족해야 합니다.

updategram 예제를 사용하기 전에 다음 사항에 유의하세요.

A. updategram에 매개 변수 전달

이 예제에서 updategram은 HumanResources.Shift 테이블에서 직원의 성을 변경합니다. updategram은 교대 근무를 고유하게 식별하는 데 사용되는 ShiftID와 Name이라는 두 개의 매개 변수를 전달합니다.

<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram">  
<updg:header>  
  <updg:param name="ShiftID"/>  
  <updg:param name="Name" />  
</updg:header>  
  <updg:sync >  
    <updg:before>  
       <HumanResources.Shift ShiftID="$ShiftID" />  
    </updg:before>  
    <updg:after>  
      <HumanResources.Shift Name="$Name" />  
    </updg:after>  
  </updg:sync>  
</ROOT>  
updategram을 테스트하려면
  1. 위의 updategram을 메모장에 복사하고 파일에 UpdategramWithParameters.xml저장합니다.

  2. ADO를 사용하여 SQLXML 4.0 쿼리를 실행하여 다음에 다음 줄을 cmd.Properties("Output Stream").Value = outStream추가하여 updategram을 실행하도록 SQLXML 4.0 테스트 스크립트(Sqlxml4test.vbs)를 준비합니다.

    cmd.NamedParameters = True  
    ' CreateParameter arguments: Name, Type, Direction, Size, Value  
    cmd.Parameters.Append cmd.CreateParameter("@ShiftID",  2, 1,  0, 1)  
    cmd.Parameters.Append cmd.CreateParameter("@Name",   200, 1, 50, "New Name")  
    

B. NULL을 updategram에 매개 변수 값으로 전달

updategram을 실행할 때 NULL로 설정하려는 매개 변수에 "isnull" 값이 할당됩니다. Updategram은 "isnulll" 매개 변수 값을 NULL로 변환하고 그에 따라 처리합니다.

다음 updategram은 직원 타이틀을 NULL로 설정합니다.

<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram">  
<updg:header nullvalue="isnull" >  
  <updg:param name="EmployeeID"/>  
  <updg:param name="ManagerID" />  
</updg:header>  
  <updg:sync >  
    <updg:before>  
       <HumanResources.Employee EmployeeID="$EmployeeID" />  
    </updg:before>  
    <updg:after>  
      <HumanResources.Employee ManagerID="$ManagerID" />  
    </updg:after>  
  </updg:sync>  
</ROOT>  
updategram을 테스트하려면
  1. 위의 updategram을 메모장에 복사하고 파일에 UpdategramPassingNullvalues.xml저장합니다.

  2. ADO를 사용하여 SQLXML 4.0 쿼리를 실행하여 다음에 다음 줄을 cmd.Properties("Output Stream").Value = outStream추가하여 updategram을 실행하도록 SQLXML 4.0 테스트 스크립트(Sqlxml4test.vbs)를 준비합니다.

    cmd.NamedParameters = True  
    ' CreateParameter arguments: Name, Type, Direction, Size, Value   
    cmd.Parameters.Append cmd.CreateParameter("@EmployeeID", 3, 1, 0, 1)  
    cmd.Parameters.Append cmd.CreateParameter("@ManagerID",  3, 1, 0, Null)  
    

또한 참조하십시오

Updategram 보안 고려 사항(SQLXML 4.0)