Loads or copies a portion or all of a local file to the internal LOB value of this object.
OraBlob.CopyFromFile "blob.bmp" amount, offset, chunksize OraClob.CopyFromFile "clob.txt" amount, offset, chunksize
The arguments for the method are:
Arguments | Description |
---|---|
[in ] filename |
A string specifying the absolute name and path for the file to be read. |
[in ] [optional] amount |
An Integer specifying the maximum number in bytes to be copied. Default value is total file size. |
[in ] [optional] offset |
An Integer specifying the absolute offset of the BLOB or CLOB value of this object, in bytes for OraBLOB or OraBFILE and characters for OraCLOB . Default value is 1 . |
[in ] [optional] chunksize |
An Integer specifying the size for each read operation, in bytes. If chunksize parameter is not set or 0 , the value of the amount argument is used, which means the entire amount is transferred in one chunk. |
Obtain either a row-level lock or object-level lock before calling this method.
The file should be in the same format as the NLS_LANG
setting.
Note:
When manipulating LOBs using LOB methods, such asWrite
and CopyFromFile
, the LOB object is not automatically trimmed if the length of the new data is smaller than the old data. Use the Trim
(OraLOB) method to shrink the LOB object to the size of the new data.Example: Using the CopyFromFile Method
This example demonstrates the use of the CopyFromFile
method.
Be sure that you have the PART
table in the database with valid LOB data in it. Also, be sure that you have installed the OraLOB Schema Objects as described in "Schema Objects Used in LOB Data Type Examples" .
Dim OraSession As OraSession Dim OraDatabase As OraDatabase Dim PartImage as OraBLOB 'Create the OraSession Object. Set OraSession = CreateObject("OracleInProcServer.XOraSession") 'Create the OraDatabase Object by opening a connection to Oracle. Set OraDatabase = OraSession.OpenDatabase("ExampleDb", "scott/tiger", 0&) 'Create a Dynaset containing a BLOB and a CLOB column set part = OraDatabase.CreateDynaset ("select * from part where" & _ "part_id = 1234",0) set PartImage = part.Fields("part_image").Value 'copy the entire content of partimage.jpg file to LOBS part.Edit PartImage.CopyFromFile "partimage.jpg" part.Update
See Also:
Trim (OraLOB) Method