您的位置:首页 > 数据库 > Oracle

C# 连接 Oracle,读取Blob字段数据,存到文件中去,包括pdf等等

2014-04-13 15:23 573 查看
代码如下,记得引入Oracle的dll

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OracleClient;
using System.Data.SqlClient;
using System.IO;

namespace WindowsFormsApplication3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void simpleButton1_Click(object sender, EventArgs e)
{
var mServiceName = "20.";
var mUserName = "k_";
var  mPsw = "z!";
string connstring = string.Format("Data Source={0};User Id={1};Password={2}", mServiceName, mUserName, mPsw);
OracleConnection conn = new OracleConnection(connstring);
var a = "SELECT DOC_NT FROM dd WHERE  DOT_ID='6ff157b3-a482-4731-935d-782af8ca60cd'";
OracleCommand cmd = new OracleCommand(a, conn);
try
{
conn.Open();
OracleDataReader sdr = cmd.ExecuteReader();
sdr.Read();
var blob = new Byte[(sdr.GetBytes(0, 0, null, 0, int.MaxValue))];
sdr.GetBytes(0, 0, blob, 0, blob.Length);
sdr.Close();
conn.Close();
var  fs = new FileStream("c:\\abd.pdf", FileMode.Create, FileAccess.Write);
fs.Write(blob, 0, blob.Length);
fs.Close();

}
catch (System.Exception ex)
{
conn = null;
throw ex;
}
finally
{
if (conn != null && conn.State == System.Data.ConnectionState.Open)
conn.Close();
}

}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐