sqlPathExpression 인수에 정의된 대로 cniSqlCreateReadOnlyPathExpression 또는 cniSqlCreateModifiablePathExpression 유틸리티 함수를 사용하여 작성된 SQLPathExpression을 실행합니다.
CciElement* cniSqlNavigatePath( int* returnCode, CciSqlPathExpression* sqlPathExpression, CciMessage* inputMessageRoot, CciMessage* inputLocalEnvironment, CciMessage* inputExceptionList, CciMessage* outputMessageRoot CciMessage* outputLocalEnvironment, CciMessage* outputExceptionList);
다음 표는 ESQL 경로 표현식에 승인되는 상관 이름과 액세스한 데이터 간의 맵핑을 보여줍니다.
상관 이름 | 액세스한 데이터 |
---|---|
Environment | 플로우에 대한 단일 환경 트리. 브로커가 판별하며 이 API를 통해 지정할 필요가 없습니다. |
InputLocalEnvironment | cniSqlNavigatePath의 inputLocalEnvironment 매개변수 |
OutputLocalEnvironment | cniSqlNavigatePath의 outputLocalEnvironment 매개변수 |
InputRoot | cniSqlNavigatePath의 inputMessageRoot 매개변수 |
InputBody | InputRoot의 마지막 하위 |
InputProperties | InputRoot.Properties 주: InputRoot.Properties는
"Properties"라는 InputRoot의 첫 번째 하위임
|
OutputRoot | cniSqlNavigatePath의 outputMessageRoot 매개변수 |
InputExceptionList | cniSqlNavigatePath의 inputExceptionList 매개변수 |
OutputExceptionList | cniSqlNavigatePath의 outputExceptionList 매개변수 |
Database | cniCreateReadOnlyPathExpression 또는 cniCreateModifyablePathExpression의 dataSourceName 매개변수가 식별하는 ODBC 데이터 소스 |
InputDestinationList | InputLocalEnvironment와 동의어 |
OutputDestinationList | OutputLocalEnvironment와 동의어 |
경로의 실제 탐색 가능성과 검증에 대한 다른 규칙은 모두 ESQL 필드 참조 문서를 따릅니다.
SQLPathExpression( cniSqlCreateReadOnlyPathExpression 또는 cniSqlCreateModifiablePathExpression에 대한 예 참조)이 이미 작성된 것으로 가정하고 다음 코드를 사용하여 대상 요소를 탐색할 수 있습니다.
CciElement* targetElement = cniSqlNavigatePath( NULL, ((NODE_CONTEXT_ST *)context)->pathExpression, message, destinationList, exceptionList, NULL, /*we do not reference any output trees*/ NULL, NULL);