Skip Headers

Oracle® Objects for OLE Developer's Guide
10g Release 1 (10.1)

Part Number B10118-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Master Index
Master Index
Go to Feedback page
Feedback

Example: Single piece Reading of a LOB

Schema Description

Dim OraSession As OraSession

Dim OraDatabase As OraDatabase

Dim PartDesc As OraClob

Dim AmountRead As Long

Dim buffer As Variant

Dim buf As String

'Create the OraSession Object.

Set OraSession = CreateObject("OracleInProcServer.XOraSession")

'Create the OraDatabase Object.

Set OraDatabase = OraSession.OpenDatabase("ExampleDb",

"scott/tiger", 0&)

'Add PartDesc as an Output parameter and set its initial value.

OraDatabase.Parameters.Add "PartDesc", Null, ORAPARM_OUTPUT

OraDatabase.Parameters("PartDesc").ServerType = ORATYPE_CLOB

'Execute the statement returning 'PartDesc'

OraDatabase.ExecuteSQL ("BEGIN select part_desc into :PARTDESC from

part where part_id = 1 for update NOWAIT; END;")

'Get 'PartDesc' from Parameters collection

Set PartDesc = OraDatabase.Parameters("PartDesc").Value

'Get a free file number

FNum = FreeFile

'Open the file.

Open "Desc.Dat" For Binary As #FNum

'Read entire CLOB value, buffer must be a Variant

AmountRead = PartDesc.Read(buffer)

'put will not allow Variant type

buf = buffer

Put #FNum, , buf

Close FNum