C#操作Oracle的blob
using System;
using Fjeptri.DataAccess.DataHelper;
using System.Data.OracleClient;
using System.Data;
using System.IO;
using System.Windows.Forms;
using blank;
namespace WindowsApplication1
{
/// <summary>
/// Blob 的摘要说明。
/// </summary>
public class Blob
{
public Blob()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public void InsertBlob() //插入Blob内容
{
//获取提交数据库的文件内容。
OracleLob blob = this.GetTempBLobs();
//文件内容是否为空
if(blob.IsNull)
{return;}
//向数据库提交内容。
OracleConnection conn = new OracleConnection
(ConfigInfo.GetConnectionString());
if(conn.State == ConnectionState.Closed)
{
conn.Open();
}
OracleTransaction transaction =conn.BeginTransaction();
string Create="insert into tablewithlobs(a,b) values
(tablewithlobs_seq.nextval,:Blob)";
OracleParameter[] param=new OracleParameter[1];
param[0]=new OracleParameter("Blob",OracleType.Blob);
param[0].Value = blob;
OracleHelper.ExecuteNonQuery
(transaction,CommandType.Text,Create,param);
transaction.Commit();
conn.Close();
}
private OracleLob GetTempBLobs() //获取提交数据库的文件内容
{
//输入文件内容
Stream strea