설명: 메시지 플로우 노드 내에서 데이터베이스 호출이 수행될 때, 플로우는
적절한 SQL을 구성하며 이것은 ODBC로 데이터베이스 관리자에 송신됩니다. 이 프로세스의 일부로서 SQLPrepare 기능을 사용하여 SQL문을 준비하며, 이 SQL문이
실행할 수 있도록 명령문 핸들을 확보합니다. 성능상의 이유로, 명령문이 준비된 후에는 SQLPrepare 기능에 대한 호출 수를
줄이기 위해 명령문 및 핸들이 캐시에 저장됩니다. 명령문이 이미 캐시에 있으면,
새로 바인딩된 매개변수로 재실행될 수 있도록 명령문 핸들이 리턴됩니다.
명령문 문자열은 캐시 찾아보기를 수행하는 데 사용됩니다. 메시지마다
조금씩 다른 하드코드된 SQL 문자열을 사용함으로써, 명령문이 캐시에서 발견되지
않고 SQLPrepare 기능을 항상 수행할 수 있습니다. (또한 새 ODBC 커서가 열립니다.) PASSTHRU문을 사용할 때는, 처리되는 메시지마다 런타임에 바인딩되는 매개변수와
함께 동일한 SQL 준비된 명령문이 사용될 수 있도록 매개변수 마커를 사용하십시오. 이 방법은 데이터베이스 자원의 관점에서 보다 효과적이며,
반복적으로 실행되는 명령문의 경우에는 이 방법이 더 빠릅니다.
그러나 매개변수 마커를 항상 사용할 수 있는 것은 아니며, 런타임 시 SQL문 문자열을
동적으로 빌드하고자 할 수도 있습니다.
이는 잠재적으로 다수의 고유 SQL문이 캐시되게
합니다. 캐시 자체는 늘어나지 않습니다. 이러한 명령문 자체가 크지 않지만
메모리 할당이 작으면 메모리가 단편화될 수 있습니다.