`

读取blob数据

 
阅读更多

 

select * from d_41_001 t;

create or replace procedure get_blob
(
 t_ywlsh varchar2,out_blob out varchar2
)
as
  load_blob blob;
  amount int;
  offset int:=1;
  buffer varchar2(3000);
begin
     select tabd4101_sqs into load_blob from d_41_001 where ywlsh=t_ywlsh;
     amount:=dbms_lob.getlength(load_blob);
     dbms_lob.read(load_blob,amount,offset,buffer);
     out_blob:=utl_raw.cast_to_varchar2(buffer);
end;

declare 
        out_string varchar2(3000);
begin
     get_blob('WH-A4120101201027041',out_string);     
end;


 create or replace  procedure get_blob (t_ywlsh varchar2,poname varchar2) IS
   l_file      UTL_FILE.FILE_TYPE;
   l_buffer    RAW(32767);
   l_amount    BINARY_INTEGER := 32767;
   l_pos       INTEGER := 1;
   l_blob      BLOB;
   l_blob_len  INTEGER;
 BEGIN
    select tabd4101_sqs into l_blob from d_41_001 where ywlsh=t_ywlsh;
 
     l_blob_len := DBMS_LOB.GETLENGTH(l_blob);
     l_file := UTL_FILE.FOPEN('BLOBDIR',poname,'wb', 32767);
 
     WHILE l_pos < l_blob_len LOOP
       DBMS_LOB.READ (l_blob, l_amount, l_pos, l_buffer);
       dbms_output.put_line(l_buffer);
       UTL_FILE
       UTL_FILE.PUT_RAW(l_file, l_buffer, TRUE);
       l_pos := l_pos + l_amount;
     END LOOP;
     
     UTL_FILE.FCLOSE(l_file);
   
   END;
分享到:
评论

相关推荐

    Hiberante读取BLOB数据类型.

    当从数据库读取BLOB数据时,我们需要使用Hibernate提供的API。例如,我们可以从查询结果集中获取BLOB对象,然后通过流操作读取其内容: ```java Session session = HibernateUtil.getSessionFactory()....

    利用VB存取数据库中BLOB数据

    5. 读取BLOB数据:读取BLOB数据时,同样使用`ADODB.Stream`对象。假设我们已经获取了包含BLOB数据的记录集,可以这样处理: ```vb Dim blobStream As New ADODB.Stream blobStream.Open blobStream.Write rs(...

    C#,BLOB读取操作

    C# 中的 BLOB(Binary Large OBject)读取操作是指从数据库中读取二进制数据的过程。BLOB 是一种二进制数据类型,用于存储大规模的二进制数据,如图片、音频、视频等。在 C# 中,我们可以使用 FileStream 对象来读取...

    java读取大字段blob类型

    4. **读取BLOB数据**:通过`ResultSet`获取到`BLOB`对象,并将其转换为`InputStream`进行读取。 ```java if (rs.next()) { oracle.sql.BLOB content = (oracle.sql.BLOB) rs.getBlob("content"); ...

    oracle中读取blob字段.doc

    除了读取BLOB数据之外,还可能需要向表中写入BLOB数据。这通常涉及到将本地文件的数据读取到内存中,然后将其插入到数据库中的BLOB字段。 ##### 4.1 准备SQL语句 准备一条SQL插入语句,用于插入新的记录。 ```java...

    关于在SQL Server数据库系统中存取BLOB数据的探讨.pdf

    关于在SQL Server数据库系统中存取BLOB数据的探讨 在SQL Server数据库系统中,存取BLOB(Binary Large OBject)数据是一种复杂的问题。BLOB数据是指非结构化的大型二进制数据,例如图片、音频、视频等。这种数据...

    分块读取Blob字段数据演示(Delphi + Oracle)

    4. 打开查询并读取Blob数据。使用TOracleBlobField的LoadFromStream方法,将Blob字段的内容加载到一个TMemoryStream中。 5. 分块读取Blob:在TOracleBlobField的LoadFromStream方法内部,可以设置Stream的Size为...

    oracle blob转文件读取

    3. **获取Blob数据**:使用`OracleDataReader`从结果集中读取Blob数据。 4. **处理Blob数据**:将Blob数据转换为文件并进行相应的操作。 #### 三、示例代码解析 根据提供的部分代码片段,我们可以进一步了解如何在...

    Hibernate读取blob字段

    - 读取Blob数据时,确保及时关闭输入流和输出流,以避免资源泄漏。 - 如果数据量非常大,可以考虑使用分块读取或异步处理,以减少内存占用。 综上所述,使用Hibernate读取Blob字段涉及到配置映射文件、定义实体类...

    Blob数据下载到本地

    3. **读取Blob数据**:在Java代码中,使用ResultSet的getBinaryStream方法读取Blob数据流。例如: ```java ResultSet rs = stmt.executeQuery(sql); if (rs.next()) { InputStream blobStream = rs....

    pb中从数据库读出blob,然后用word打开

    在探讨如何在PB(PowerBuilder)环境中从数据库读取BLOB数据并利用Word进行处理之前,我们先简要回顾一下BLOB(Binary Large Object)的基本概念。BLOB是一种用于存储大量二进制数据的数据类型,如图像、音频、视频...

    在Oracle数据表中存取BLOB数据的方法研究.pdf

    读取BLOB数据时,同样需要使用事务处理,执行一个SQL查询命令,并通过数据读取器获取对应的OracleLob指针。之后,可以从数据库中读取BLOB数据,并将其写入到文件中,同样需要使用到文件流操作。 值得注意的是,在...

    vc6读取数据库blob大二制对像

    3. **读取Blob数据**:在VC6中,Blob字段通常作为`ADODB.Stream`对象处理。以下是如何读取Blob字段的示例: ```cpp CComPtr&lt;ADODB::_Recordset&gt; rs; rs.CoCreateInstance(__uuidof(ADODB::Recordset)); rs-&gt;Open...

    ADO实现BLOB数据的存取

    // 读取BLOB数据 long blobLength; char* blobData = new char[blobLength]; rs.GetFieldValue(_T("image"), blobData, &blobLength); // 处理blobData,如写入文件或显示 delete[] blobData; ``` **使用C++与ADO...

    java中sqllite数据库blob数据类型的存取.docx

    // 读取BLOB数据 readBlobData(conn); } catch (Exception e) { e.printStackTrace(); } } private static void insertBlobData(Connection conn) throws Exception { String sql = "INSERT INTO your_...

    Delphi 如何将二维数组数据 以Blob 存入数据库中 并读取 工程

    在本场景中,我们将探讨如何在 Delphi 中将二维数组数据转换为 Blob 数据,然后存入 MySQL 数据库,并从数据库中读取出来。 首先,我们需要了解 Delphi 中的二维数组和 Stream 对象的概念。二维数组是多个一维数组...

    基于.NET的Oracle BLOB数据高效存取方法.pdf

    通过这种设计,当需要读取BLOB数据时,应用程序可以通过HTTP请求向服务器发送请求,服务器端的自定义HTTP处理程序接收到请求后,根据请求参数定位到相应的BLOB数据,然后以内存流的形式读取并返回给客户端。...

    BLOB数据存取

    当从数据库读取BLOB数据时,可以创建一个`_RecordsetPtr`对象,执行SELECT查询,然后读取`Binary`或`LongBinary`类型的字段。例如: ```cpp _RecordsetPtr rs; rs.CreateInstance(__uuidof(Recordset)); rs-&gt;...

    blob类型数据

    - 访问:当需要读取blob数据时,数据库会根据存储的指针定位到实际数据位置,然后将其返回给应用程序。 2. **操作步骤**: - 插入:插入blob数据时,需要将二进制数据转换为适合数据库存储的格式,如使用C#的`...

Global site tag (gtag.js) - Google Analytics