Oracle9i Application Developer's Guide - Large Objects (LOBs)
Release 1 (9.0.1)

Part Number A88879-01
Go To Documentation Library
Home
Go To Product List
Book List
Go To Table Of Contents
Contents
Go To Index
Index

Master Index

Feedback

Go to previous page Go to beginning of chapter Go to next page

LOB Support in Different Programmatic Environments, 3 of 11


Comparing the LOB Interfaces

Table 3-2 and Table 3-3compare the eight LOB programmatic interfaces by listing their functions and methods used to operate on LOBs. The tables are split in two simply to accomodate all eight interfaces. The interfaces' functionality, with regards LOBs, is described in the following sections.

Table 3-2 Comparing the LOB Interfaces, 1 of 2  
PL/SQL: DBMS_LOB (dbmslob.sql)   C (OCI) (ociap.h)   C++ (OCCI) (occiData.h). Also for OCCIClob and OCCIBfile classes.  Pro*C/C++ and Pro*COBOL  

DBMS_LOB.COMPARE  

N/A 

N/A 

N/A 

DBMS_LOB.INSTR  

N/A 

N/A 

N/A 

DBMS_LOB.SUBSTR  

N/A 

N/A 

N/A 

DBMS_LOB.APPEND  

OCILob.Append 

OCCIBlob.append() 

APPEND 

N/A [use PL/SQL assign operator] 

OCILob.Assign 

 

ASSIGN 

N/A  

OCILob.CharSetForm 

OCCIClob.getCharsetForm (CLOB only) 

N/A 

N/A  

OCILob.CharSetId 

OCCIClob.getCharsetId()

(CLOB only) 

N/A 

DBMS_LOB.CLOSE  

OCILob.Close 

OCCIBlob.clos()  

CLOSE 

N/A 

N/A 

OCCIClob.closeStream() 

N/A 

DBMS_LOB.COPY  

OCILob.Copy 

OCCIBlob.copy() 

COPY 

N/A 

OCILob.DisableBuffering 

N/A 

DISABLE BUFFERING 

N/A 

OCILob.EnableBuffering 

N/A 

ENABLE BUFFERING 

DBMS_LOB.ERASE  

OCILob.Erase 

N/A 

ERASE 

DBMS_LOB.FILECLOSE  

OCILob.FileClose 

OCCIClob.close() 

CLOSE 

DBMS_LOB.FILECLOSEALL  

OCILob.FileCloseAll 

N/A 

FILE CLOSE ALL 

DBMS_LOB.FILEEXISTS  

OCILob.FileExists 

OCCIBfile.fileExists() 

DESCRIBE [FILEEXISTS] 

DBMS_LOB.GETCHUNKSIZE  

OCILob.GetChunkSize 

OCCIBlob.getChunkSize() 

DESCRIBE [CHUNKSIZE] 

DBMS_LOB.FILEGETNAME  

OCILob.FileGetName 

OCCIBfile.getFileName() and OCCIBfile.getDirAlias() 

DESCRIBE [DIRECTORY, FILENAME] 

DBMS_LOB.FILEISOPEN  

OCILob.FileIsOpen 

OCCIBfile.isOpen() 

DESCRIBE [ISOPEN] 

DBMS_LOB.FILEOPEN  

OCILob.FileOpen 

OCCIBfile.open() 

OPEN 

N/A (use BFILENAME operator)  

OCILob.FileSetName 

OCCIBfile.setName() 

FILE SET 

N/A  

OCILob.FlushBuffer 

N/A 

FLUSH BUFFER 

DBMS_LOB.GETLENGTH  

OCILob.GetLength 

OCCIBlob.length() 

DESCRIBE [LENGTH] 

N/A  

OCILob.IsEqual 

use operator = ( )=/!= 

N/A 

DBMS_LOB.ISOPEN  

OCILob.IsOpen 

OCCIBlob.isOpen() 

DESCRIBE [ISOPEN] 

DBMS_LOB.LOADFROMFILE 

OCILob.LoadFromFile 

Use the overloadedcopy() method. 

LOAD FROM FILE 

N/A [always initialize]OCILob. 

LocatorIsInit 

OCCIClob.isinitialized() 

N/A 

DBMS_LOB.OPEN 

OCILob.Open 

OCCIBlob.open 

OPEN 

DBMS_LOB.READ  

OCILob.Read 

OCCIBlob.read 

READ 

DBMS_LOB.TRIM  

OCILob.Trim 

OCCIBlob.trim 

TRIM 

DBMS_LOB.WRITE  

OCILob.Write 

OCCIBlob.write 

WRITEORALOB. 

DBMS_LOB.WRITEAPPEND 

OCILob.WriteAppend 

N/A 

WRITE APPEND 

DBMS_LOB.CREATETEMPORARY 

OCILob.CreateTemporary 

N/A 

N/A 

DBMS_LOB.FREETEMPORARY 

OCILob.FreeTemporary 

N/A 

N/A 

DBMS_LOB.ISTEMPORARY 

OCILob.IsTemporary 

N/A 

N/A 

 

OCILob.LocatorAssign 

use operator = ( ) or copy constructor 

N/A 

Table 3-3 Comparing the LOB Interfaces, 2 of 2  
PL/SQL: DBMS_LOB (dbmslob.sql)   Visual Basic (OO4O)  Java (JDBC  OLEDB 

DBMS_LOB.COMPARE  

ORALOB.Compare 

Use DBMS_LOB. 

N/A 

DBMS_LOB.INSTR  

ORALOB.Matchpos 

position 

N/A 

DBMS_LOB.SUBSTR  

N/A 

getBytes for BLOBs or BFILEs

getSubString for CLOBs 

N/A 

DBMS_LOB.APPEND  

ORALOB.Append 

Use length and then putBytes or PutString 

N/A 

N/A [use PL/SQL assign operator] 

ORALOB.Clone 

N/A [use equal sign] 

N/A 

N/A  

N/A 

N/A 

N/A 

N/A  

N/A 

N/A 

N/A 

DBMS_LOB.CLOSE  

N/A 

use DBMS_LOB. 

N/A 

DBMS_LOB.COPY  

ORALOB.Copy 

Use read and write 

N/A 

N/A 

ORALOB.DisableBuffering 

N/A 

N/A 

N/A 

ORALOB.EnableBuffering 

N/A 

N/A 

DBMS_LOB.ERASE  

ORALOB.Erase 

Use DBMS_LOB. 

N/A 

DBMS_LOB.FILECLOSE  

ORABFILE.Close 

closeFile 

N/A 

DBMS_LOB.FILECLOSEALL  

ORABFILE.CloseAll 

Use DBMS_LOB. 

N/A 

DBMS_LOB.FILEEXISTS  

ORABFILE.Exist 

fileExists 

N/A 

DBMS_LOB.GETCHUNKSIZE  

N/A 

getChunkSize 

N/A 

DBMS_LOB.FILEGETNAME  

ORABFILE.

DirectoryName

ORABFILE.

FileName 

getDirAlias

getName 

N/A 

DBMS_LOB.FILEISOPEN  

ORABFILE.IsOpen 

Use DBMS_LOB.ISOPEN 

N/A 

DBMS_LOB.FILEOPEN  

ORABFILE.Open 

openFile 

N/A 

N/A (use BFILENAME operator)  

DirectoryName

FileName 

Use BFILENAME 

N/A 

N/A  

ORALOB.FlushBuffer 

N/A 

N/A 

DBMS_LOB.GETLENGTH  

ORALOB.Size 

length 

N/A 

N/A  

N/A 

equals 

N/A 

DBMS_LOB.ISOPEN  

ORALOB.IsOpen 

use DBMS_LOB. IsOpen 

N/A 

DBMS_LOB.LOADFROMFILE 

ORALOB.

CopyFromBfile 

Use read and then write 

N/A 

N/A [always initialize]OCILob. 

N/A 

N/A 

N/A 

DBMS_LOB.OPEN 

ORALOB.open 

Use DBMS_LOB. 

N/A 

DBMS_LOB.READ  

ORALOB.Read 

BLOB or BFILE: getBytes and getBinaryStream

CLOB: getString and getSubString and getCharacterStream 

IRowset::GetData and ISequentialStream::Read 

DBMS_LOB.TRIM  

ORALOB.Trim 

Use DBMS_LOB. 

N/A 

DBMS_LOB.WRITE  

ORALOB.Write 

BLOB or BFILE: putBytes and getBinaryOutputStream

CLOB: putString and getCharacterOutputStream 

IRowsetChange::SetData

and

ISequentialStream::Write 

DBMS_LOB.WRITEAPPEND 

N/A 

Use length and then putString or putBytes 

N/A 

DBMS_LOB.CREATETEMPORARY 

N/A 

 

N/A 

DBMS_LOB.FREETEMPORARY 

N/A 

 

 

DBMS_LOB.ISTEMPORARY 

N/A 

 

 


Go to previous page Go to beginning of chapter Go to next page
Oracle
Copyright © 1996-2001, Oracle Corporation.

All Rights Reserved.
Go To Documentation Library
Home
Go To Product List
Book List
Go To Table Of Contents
Contents
Go To Index
Index

Master Index

Feedback