프로시저 및 함수에 대한 메시지 스키마
SQL Server 위한 Microsoft BizTalk 어댑터는 데이터베이스 저장 프로시저와 스칼라 및 테이블 반환 함수를 작업으로 SQL Server 표시됩니다. 이 섹션에서는 프로시저 및 함수를 호출하는 데 사용되는 메시지 구조 및 작업에 대해 설명합니다.
프로시저 및 함수의 메시지 구조
프로시저 및 함수에 대해 표시되는 작업은 요청-응답 메시지 교환 패턴을 따릅니다. 다음 표에서는 이러한 요청 및 응답 메시지의 구조를 보여줍니다.
작업 | XML 메시지 | Description |
---|---|---|
저장 프로시저 요청 | <[SP_NAME] xmlns="http://schemas.microsoft.com/Sql/2008/05/Procedures/[SCHEMA]"> <[PRM1_NAME]>value1</[PRM1_NAME]> <[PRM2_NAME]>value2</[PRM2_NAME]> … </[SP_NAME]> |
- |
저장 프로시저 응답 | <[SP_NAME]Response xmlns="http://schemas.microsoft.com/Sql/2008/05/Procedures/[SCHEMA]"> <[SP_NAME]Result> <DataSet> <any>[Value]</any> <any>[Value]</any> … </DataSet> </[SP_NAME]Result> <ReturnValue>[Value]</ReturnValue> </[SP_NAME]Response> |
저장 프로시저의 반환 값은 DataSet의 배열입니다. |
저장 프로시저 요청 Strongly-Typed | <[STRNG_SP_NAME] xmlns="http://schemas.microsoft.com/Sql/2008/05/TypedProcedures/[SCHEMA]"> <[PRM1_NAME]>value1<[PRM1_NAME]> <[PRM2_NAME]>value2</[PRM2_NAME]> … </[STRNG_SP_NAME]> |
- |
저장 프로시저 응답 Strongly-Typed | <[STRNG_SP_NAME]Response xmlns="http://schemas.microsoft.com/Sql/2008/05/TypedProcedures/[SCHEMA]"> <StoredProcedureResultSet0> <StoredProcedureResultSet0 xmlns:ns1="http://schemas.microsoft.com/Sql/2008/05/ProcedureResultSets/[SCHEMA]/[STRNG_SP_NAME]"> <[PRM1_NAME]>value1<[PRM1_NAME]> <[PRM2_NAME]>value2</[PRM2_NAME]> … </StoredProcedureResultSet0> </StoredProcedureResultSet0> <ReturnValue>[Value]</ReturnValue> </[STRNG_SP_NAME]Response> |
강력한 형식의 저장 프로시저의 반환 값은 강력한 형식의 데이터 배열입니다. |
스칼라 함수 요청 | <[SCLR_FN_NAME] xmlns="http://schemas.microsoft.com/Sql/2008/05/ScalarFunctions/[SCHEMA]"> <[PRM_NAME]>value</[PRM_NAME]> </[SCLR_FN_NAME]> |
- |
스칼라 함수 응답 | <[SCLR_FN_NAME]Response xmlns="http://schemas.microsoft.com/Sql/2008/05/ScalarFunctions/[SCHEMA]"> <[SCLR_FN_NAME]Result>return_value</[SCLR_FN_NAME]Result> <[PRM_NAME]>value</[PRM_NAME]> </[SCLR_FN_NAME]Response> |
- |
테이블 반환 함수 요청 | <[TBL_FN_NAME] xmlns="http://schemas.microsoft.com/Sql/2008/05/TableValuedFunctions/[SCHEMA]"> <[PRM1_NAME]>value1</[PRM1_NAME]> <[PRM2_NAME]>value2</[PRM2_NAME]> … </[TBL_FN_NAME]> |
- |
테이블 반환 함수 응답 | <[TBL_FN_NAME]Response xmlns="http://schemas.microsoft.com/Sql/2008/05/TableValuedFunctions/[SCHEMA]"> <[TBL_FN_NAME]Result> <[TBL_FN_NAME] xmlns="http://schemas.microsoft.com/Sql/2008/05/TableValuedFunctions/[SCHEMA]"> <[PRM1_NAME]>value1</[PRM1_NAME]> <[PRM2_NAME]>value2</[PRM2_NAME]> ... </[TBL_FN_NAME]"> ... </[TBL_FN_NAME]Result> </[TBL_FN_NAME]Response> |
[SCHEMA] = SQL Server 아티팩트 컬렉션(예: dbo).
[SP_NAME] = 실행할 저장 프로시저입니다. 예를 들어 ADD_EMP_DETAILS.
[STRNG_SP_NAME] = 실행할 강력한 형식의 저장 프로시저입니다. 예를 들어 GET_EMP_DETAILS.
[SCLR_FN_NAME] = 실행할 스칼라 함수입니다. 예를 들어 GET_EMP_ID.
[TBL_FN_NAME] = 실행할 테이블 반환 함수입니다. 예를 들어 TVF_EMPLOYEE.
[PRM_NAME] = SQL Server 매개 변수의 이름입니다.
함수 및 프로시저의 메시지 작업
SQL 어댑터는 저장 프로시저 및 함수 작업에 다음 메시지 작업을 사용합니다.
메시지 | 작업 | 예제 |
---|---|---|
저장 프로시저 요청 | Procedure/[SCHEMA]/[SP_NAME] | procedure/dbo/ADD_EMP_DETAILS |
저장 프로시저 응답 | Procedure/[SCHEMA]/[SP_NAME]/response | procedure/dbo/ADD_EMP_DETAILS/response |
저장 프로시저 요청 Strongly-Typed | TypedProcedure/[SCHEMA]/[STRNG_SP_NAME] | TypedProcedure/dbo/GET_EMP_DETAILS |
저장 프로시저 응답 Strongly-Typed | TypedProcedure/[SCHEMA]/[STRNG_SP_NAME]/response | TypedProcedure/dbo/GET_EMP_DETAILS/response |
FOR XML 저장 프로시저 요청 | XmlProcedure/[SCHEMA]/[SP_NAME] | XmlProcedure/dbo/GET_EMP_DETAILS_FOR_XML |
FOR XML 저장 프로시저 응답 | XmlProcedure/[SCHEMA]/[SP_NAME]/resp | XmlProcedure/dbo/GET_EMP_DETAILS_FOR_XML/response |
스칼라 함수 요청 | ScalarFunction/[SCHEMA]/[SCLR_FN_NAME] | ScalarFunction/dbo/GET_EMP_ID |
스칼라 함수 응답 | ScalarFunction/[SCHEMA]/[SCLR_FN_NAME]/response | ScalarFunction/dbo/GET_EMP_ID/response |
테이블 반환 함수 요청 | TableFunction/[SCHEMA]/[TBL_FN_NAME] | TableFunction/dbo/TVF_EMPLOYEE |
테이블 반환 함수 응답 | TableFunction/[SCHEMA]/[TBL_FN_NAME]/response | TableFunction/dbo/TVF_EMPLOYEE/response |
[SP_NAME] = 실행할 저장 프로시저입니다. 예를 들어 ADD_EMP_DETAILS.
[STRNG_SP_NAME] = 실행할 강력한 형식의 저장 프로시저입니다. 예를 들어 GET_EMP_DETAILS.
[SCLR_FN_NAME] = 실행할 스칼라 함수입니다. 예를 들어 GET_EMP_ID.
[TBL_FN_NAME] = 실행할 테이블 반환 함수의 이름입니다. 예를 들어 TVF_EMPLOYEE.