当前位置:  数据库>oracle

读取Oracle中的Blob字段生成对应的文件

    来源: 互联网  发布时间:2017-04-01

    本文导语: 读取WMF的Blob字段,生成wmf文件  ///         /// 读取WMF字段,生成临时WMF文件         ///         private void ReadWMFBlobField()         {             OracleConnection _connection = new OracleConnection(m_connectionString);       ...

读取WMF的Blob字段,生成wmf文件
 ///

        /// 读取WMF字段,生成临时WMF文件

        ///

        private void ReadWMFBlobField()

        {

            OracleConnection _connection = new OracleConnection(m_connectionString);

            try

            {

                _connection.Open();

 

                OracleCommand _selectCommand = _connection.CreateCommand();

                OracleTransaction _transaction = _selectCommand.Connection.BeginTransaction();

                _selectCommand.Transaction = _transaction;

 

                string _selectSQL = "Select WMF from hSUSEr.ZDT where ZDNO = '"

                    + m_zoneNo + "'";

                _selectCommand.CommandText = _selectSQL;

 

                OracleDataReader _dataReader = _selectCommand.ExecuteReader();

                if (_dataReader.Read() == true)

                {

                    OracleLob _oracleLob = _dataReader.GetOracleLob(0);

                    long _byteCount = _oracleLob.Length;

                    _dataReader.Close();

 

                    if (File.Exists(m_wmfFileName) == true)

                    {

                        File.Delete(m_wmfFileName);

                    }

 

                    FileStream _fileStream = File.Open(m_wmfFileName, FileMode.OpenOrCreate);

                    int _length = 30485760;

                    byte[] _buffer = new byte[_length];

                    int i = _oracleLob.Read(_buffer, 0, _length);

                    while (i > 0)

                    {

                        _fileStream.Write(_buffer, 0, i);

                        i = _oracleLob.Read(_buffer, 0, _length);

                    }

 

                    _fileStream.Close();

                    _oracleLob.Close();

                    _selectCommand.Parameters.Clear();

 

                    _transaction.Commit();

                }

                else

                {

                    MessageBoxEx.Show("没有查找到相符合的记录!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);

                }

            }

            catch (Exception ex)

            {

                MessageBoxEx.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);

            }

        }

读取DWG的Blob字段,生成DWG文件
 ///

        /// 读取DWG字段,生成DWG文件

        ///

        private void ReadDWGBlobField()

        {

            OracleConnection _connection = new OracleConnection(m_connectionString);

 

            try

            {

                _connection.Open();

 

                OracleCommand _selectCommand = _connection.CreateCommand();

                OracleTransaction _transaction = _selectCommand.Connection.BeginTransaction();

                _selectCommand.Transaction = _transaction;

 

                string _selectSQL = "Select DWG from hsuser.ZDT where ZDNO = '"

                    + m_zoneNo + "'";

 

                _selectCommand.CommandText = _selectSQL;

 

                OracleDataReader _dataReader = _selectCommand.ExecuteReader();

 

                if (_dataReader.Read() == true)

                {

                    OracleLob _oracleLob = _dataReader.GetOracleLob(0);

                    long _byteCount = _oracleLob.Length;

                    _dataReader.Close();

 

                    if (File.Exists(m_dwgFileName) == true)

                    {

                        File.Delete(m_dwgFileName);

                    }

 

                    FileStream _fileStream = File.Open(m_dwgFileName, FileMode.OpenOrCreate);

 

                    int _length = 30485760;

                    byte[] _buffer = new byte[_length];

                    int i;

                    while ((i = _oracleLob.Read(_buffer, 0, _length)) > 0)

                    {

                        _fileStream.Write(_buffer, 0, i);

                    }

 

                    _fileStream.Close();

                    _oracleLob.Clone();

                    _selectCommand.Parameters.Clear();

 

                    _transaction.Commit();

                }

                else

                {

                    MessageBoxEx.Show("没有查找到相符合的记录!", "提示",

                        MessageBoxButtons.OK, MessageBoxIcon.Information);

                }

            }

 

            catch (Exception ex)

            {

                MessageBoxEx.Show(ex.Message, "警告", MessageBoxButtons.OK, MessageBoxIcon.Error);

            }

        }


    
 
 

您可能感兴趣的文章:

  • linux 下使用 FREETDS 访问数据库 image 字段的问题, 仅能读取 64K ,超出部分读取不到?
  • 在Java中,用Mircosoft SQL Server数据库,请问要进行日期字段的读取,用( ResultSet rs ; rs.getDate(1),其中1代表相应的字段为 DateTi
  • 100分求教,如何读取sql server 2000下的Ntext字段的内容,急~~~
  • 如何成功读取并显示SQL数据库中image类型字段?
  • 小女子请求各位帮忙,为什么读取不了sql server 2000的image字段?
  • java怎样读取数据库表中字段的数据类型?
  • jdbc如何读取text类型的字段,用getXXX()方法?
  • 怎样读取access中的备注字段中的数据
  • Web服务器/前端 iis7站长之家
  • 谁有关于读取数据库中所有表的名字、字段名的例子?
  • SOS!!如何读取写入类型为Text字段的内容,数据库为MS Sql Server,分不是问题,不够再加,只要能解决!
  • 小妹求教!!关于jsp操作oracle数据库操作的问题(文件读取,插入数据库表相应字段中)
  • java sqlserver text 类型字段读取方法
  • 请问oracle的clob字段可不可以存富文本的文件,like .doc .rtf?如果可以如何用java读取?
  • 怎样用shell读取properties里面特定键对应的值?
  • 怎样用shell读取properties里面某个键对应的值,再赋值给shell中的变量
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问如何读取用dd命令生成的文件?
  • 怎样用JSP将从树状存储结构中读取的数据在JSP页面上生成一个树状目录
  • jsp读取大对象CLOB并生成xml文件示例
  • PHP使用imagick读取PDF生成png缩略图的两种方法
  • phpexcel生成与读取excel文件的例子
  • 怎样通过读取数据库,对前面的<select>的选择,动态生成后面一个<select>??急用!一定给分,
  • python读取html中指定元素生成excle文件示例
  • java解析dbf之通过javadbf包生成和读取dbf文件
  • C++ I/O 成员 getline():读取一行字符
  • read函数读取文件时如何一行一行的读取,请指教!
  • C++ I/O 成员 tellg():使用输入流读取流指针
  • java中读取.txt和读取.ini文件的方式和命令是否一样
  • C++ I/O 成员 ignore():读取字符并忽略指定字符
  • 上传文件时,如何在读取文件内容之前中断读取,并返回客户端错误信息?
  • C++ I/O 成员 read():读取字条符
  • 光驱中有一张光盘,成功读取,现在想换另一张光盘并读取,该如何做
  • C++ I/O 成员 gcount():返回读取的最后一次输入的字符数
  • 请问在Java程序中能否直接读取ini文件,如何读取?
  • C++ I/O 成员 get():读取字符
  • 高手帮忙:如何用java读取数据(从ftp服务器上一个文本文件)但不采用get的方式直接读取,打印数据内容(web方式)
  • C++ I/O 成员 tellp():使用输出流读取流指针
  • python读取浮点数和读取文本文件示例
  • 使用libpcap读取tcpdump抓取的文件并解析c代码实例
  • 读取spring配置文件的方法(spring读取资源文件)
  • 串口读取数据的问题
  • 能否读取一个二进制文件的大小
  • c语言读取csv文件和c++读取csv文件示例分享
  • linux下的mib读取问题?大虾帮解答下
  • 请问readdir读取顺序是什么


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3