
OCILob::append 함수는 BLOB 데이터에 추가할 데이터를 buffer에 담은 데이터를 offset 위치에 추가합니다.
OCILob::append 함수의 파라미터는 다음과 같습니다.
- locator: BLOB 데이터를 참조하는 OCILobLocator 객체
- offset: 추가할 위치를 나타내는 OCILobLocator 객체
- buffer: 추가할 데이터를 담은 버퍼
- data: 추가할 데이터
- len: 추가할 데이터의 길이
예를 들어, BLOB 데이터를 읽어온 후 추가하고 싶다면, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
c
OCILobLocator* locator = OCIHandleAlloc(...);
OCILobLocator* offset = OCIHandleAlloc(...);
// BLOB 데이터를 읽어온 후
OCILobLocator* buffer = OCIHandleAlloc(...);
char* data = "추가할 데이터";
int len = strlen(data);
// offset과 buffer를 OCILob::append 함수에 전달
OCILobAppend(..., offset, buffer, data, len);
// OCIHandleFree로 할당한 메모리를 해제
OCIHandleFree(...);
OCILob::append 함수는 BLOB 데이터의 길이를 반환하므로, 추가할 데이터의 길이를 파악할 수 있습니다.
주의할 점은 offset이 현재 BLOB 데이터의 길이보다 커지지 않는다는 점입니다. offset이 현재 BLOB 데이터의 길이보다 크면, OCILob::append 함수는 에러를 반환합니다.
2025-07-16 01:19