SQLXML에서 DiffGram에 대한 지침 및 제한 사항

SQLXML 4.0에서 DiffGram을 사용할 때는 다음 사항을 기억해야 합니다.

  • DiffGram으로 작업할 때는 text/ntext 및 이미지와 같은 BLOB(Binary Large Object) 형식을 <diffgr:before> 블록에 사용하면 안 됩니다. 그 이유는 동시성 제어에 사용하도록 BLOB 형식이 포함될 수 있기 때문입니다. SQL Server에서는 BLOB 형식 비교에 대한 제한으로 인해 문제가 발생할 수 있습니다. 예를 들어 LIKE 키워드는 text 데이터 형식의 열을 비교하기 위해 WHERE 절에 사용되지만 BLOB 형식의 데이터 크기가 8K 이상이면 비교 작업이 실패합니다.

  • SQLXML 4.0에서는 BLOB 형식 비교에 대한 제한으로 인해 ntext 데이터에 특수 문자가 있으면 문제가 발생할 수 있습니다. 예를 들어 ntext 형식의 열에 대해 동시성 검사를 수행할 때 DiffGram의 <diffgr:before> 블록에 "[Serializable]"을 사용하면 다음과 같은 SQLOLEDB 오류 설명과 함께 작업이 실패합니다.

    Empty update, no updatable rows found   Transaction aborted