关于文件保存到Oracle中BLOB字段的方法及例子
2011-10-12 13:21
435 查看
关于文件保存到Oracle中BLOB字段的方法及例子 ------------------------------------------- public class FileOpClass { public static byte[] GetFileStream(string filepath) { byte[] byteArray = null; FileStream fs = null; try { fs = new FileStream(filepath, FileMode.Open); long filelength = fs.Length; byteArray = new byte[filelength]; fs.Read(byteArray, 0, byteArray.Length); } catch (Exception ee) { } finally { if (fs != null) { fs.Close(); fs.Dispose(); fs = null; } } return byteArray; } public static void WriteToFile(byte[] byteArray, string filepath) { if (System.IO.File.Exists(filepath) == true) { try { System.IO.File.Delete(filepath); } catch { } } FileStream fs = null; try { fs = new FileStream(filepath, FileMode.OpenOrCreate); fs.Write(byteArray, 0, byteArray.Length); fs.Flush(); } catch (Exception ee) { } finally { if (fs != null) { fs.Close(); fs.Dispose(); fs = null; } } } } //------------------------------------------ 先插入一条objblob字段为空的记录,用insert into tablename(objid,objname) values('xxx','yyyy'); 然后对objblog字段作update方式操作 //------------------------------------------ byte[] byteArray =FileOpClass.GetFileStream(path); object UpdateBLOBFdValue=byteArray; //------------------------------------------ //更新BLOB字段值的方法 //------------------------------------------ public bool UpdateBLOBFieldValue(string UpdateTableName, string UpdateBLOBFieldName, object UpdateBLOBFdValue, string WhereEqFieldName, string WhereEqFdValue) { bool rbc = false; DatabaseHelperClass dbh = new DatabaseHelperClass(m_Database); DbConnection dbconn = null; DbTransaction dbtrans = null; //Provider=OraOleDb.Oracle; DbCommand dbCmd1 = null; try { dbconn = dbh.db.CreateConnection(); if (dbconn.State != ConnectionState.Open) { dbconn.Open(); } dbtrans = dbconn.BeginTransaction(); string PrixChar = dbh.PrixChar; string x = "update " + UpdateTableName + " set " + UpdateBLOBFieldName + "=" + PrixChar + "Img where " + WhereEqFieldName + "=" + PrixChar + "tmpguid "; byte[] byteArray = UpdateBLOBFdValue as byte[]; // dbCmd1 = dbconn.CreateCommand(); dbCmd1.CommandText = x; dbCmd1.CommandType = CommandType.Text; dbCmd1.Connection = dbconn; dbCmd1.Transaction = dbtrans; // DbParameter dbparam = dbh.CreateParameter("" + PrixChar + "Img", byteArray); dbparam.Direction = ParameterDirection.Input; dbparam.DbType = System.Data.DbType.Binary; dbparam.Value = byteArray; dbCmd1.Parameters.Add(dbparam); dbCmd1.Parameters.Add(dbh.CreateParameter("" + PrixChar + "tmpguid", WhereEqFdValue)); if (dbCmd1.ExecuteNonQuery() > 0) { rbc = true; dbtrans.Commit(); } } catch (Exception ee) { if (dbtrans != null) { dbtrans.Rollback(); } rbc = false; } finally { if (dbCmd1 != null) { dbCmd1.Dispose(); dbCmd1 = null; } //---- if (dbtrans != null) { dbtrans.Dispose(); dbtrans = null; } if (dbconn != null) { dbconn.Dispose(); dbconn = null; } } return rbc; } ----the---end-------
相关文章推荐
- 关于文件保存到Oracle中BLOB字段的方法及例子
- java将文件保存为二进制流到oracle表中的blob字段
- 如何在oracle的blob字段里保存多个文件
- 如何在oracle的blob字段里保存多个文件
- 根据标题后缀名传参点击下载保存内容为任意格式文件(内容为oracle库中某字段值:BLOB类型)
- 用C#将图片保存至Oracle BLOB字段中的方法
- c# winform 读取oracle中blob字段的图片并且显示到pictureBox里,保存进库
- ORACLE关于bin目录下各文件的意义及使用方法
- oracle中一些关于blob字段的操作
- 关于Oracle的BLOB、CLOB字段的操作方法(分JDBC和Hibernate两种)
- 关于集成第三方office的sdk产品,采用servlet方式将数据库表BLOB字段文件下载与二进制文件上传到blob
- 关于Linux Oracle下的表空间文件删除不干净的处理方法
- 设置oracle中的blob字段,将xml文件写入到数据库中
- 关于ORACLE blob图片文件的写入
- Kettle 生成的XML格式数据保存到Oracle 数据库的BLOB类型字段中
- Oracle中BLOB字段存储4GB以下视频数据的方法
- C# 文件读取方法,自己写的例子,保存一下,备用
- 如何直接下载保存在Oracl数据库中Blob字段的文件(不生成临时文件)???
- 关于java poi itext生成pdf文件的例子以及方法
- 阿里云DRDS保存数据blob字段乱码,文件损坏