//----------------------------------------------------------------------------- // ExternalLobVar_InternalRead() // Return the size of the LOB variable for internal comsumption. //----------------------------------------------------------------------------- static int ExternalLobVar_InternalRead( udt_ExternalLobVar *var, // variable to return the size of char *buffer, // buffer in which to put data ub4 bufferSize, // size of buffer ub4 *length, // length of data (IN/OUT) int offset) // offset { sword status; if (var->lobVar->isFile) { Py_BEGIN_ALLOW_THREADS status = OCILobFileOpen(var->lobVar->connection->handle, var->lobVar->environment->errorHandle, var->lobVar->data[var->pos], OCI_FILE_READONLY); Py_END_ALLOW_THREADS if (Environment_CheckForError(var->lobVar->environment, status, "ExternalLobVar_FileOpen()") < 0) return -1; }
void BfileFileIsOpen_proc(OCILobLocator *Bfile_loc, OCIEnv *envhp, OCIError *errhp, OCISvcCtx *svchp, OCIStmt *stmthp) { boolean flag; printf ("----------- OCILobFileIsOpen Demo --------------\n"); checkerr(errhp, OCILobFileOpen(svchp, errhp, Bfile_loc, (ub1)OCI_FILE_READONLY)); checkerr(errhp, OCILobFileIsOpen(svchp, errhp, Bfile_loc, &flag)); if (flag == TRUE) { printf("File is open\n"); } else { printf("File is not open\n"); } checkerr(errhp, OCILobFileClose(svchp, errhp, Bfile_loc)); }