If you are doing this from an application (VB.Net or C++ or php or whatever), then you load the data in chunks. [Here is a PHP example][1] from Oracle. [Here is a C++ example][2] from Stack Overflow. [Here is a C#.Net example][3] from Code Project. If you're doing this from scripts, check out [SQL*Loader][4]. LOAD DATA INFILE example13.dat INTO TABLE EXAMPLE13 FIELDS TERMINATED BY ',' ( EMPNO INTEGER EXTERNAL, ENAME CHAR, JOB CHAR, MGR INTEGER EXTERNAL, SAL DECIMAL EXTERNAL, COMM DECIMAL EXTERNAL, DEPTNO INTEGER EXTERNAL, RES_FILE FILLER CHAR(60), "IMAGE" BFILE(CONSTANT "ORDIMGDIR", RES_FILE) ) If one of these examples isn't the right programming language or doesn't help you, let me know and I'll try to find you one for that language. [1]: https://docs.oracle.com/cd/E17781_01/appdev.112/e18555/ch_twelve_blobs.htm#TDPPH185 [2]: http://stackoverflow.com/questions/12781553/odbc-write-blob-example-oracle-c [3]: https://www.codeproject.com/Articles/48619/Reading-and-Writing-BLOB-Data-to-Microsoft-SQL-or [4]: https://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:392618837633