using System;
using System.Collections.Generic;
using
System.ComponentModel;
using System.Data;
using System.Drawing;
using
System.Linq;
using System.Text;
using System.Threading.Tasks;
using
System.Windows.Forms;
using System.Data.OracleClient;
using
System.IO;
namespace TestOraclBlob
{
public
partial class Form1 : Form
{
OracleConnection
conn;
public
Form1()
{
InitializeComponent();
string strCon = "Data Source=orcl;Persist Security Info=True;User
ID=wcq;Password=wcq123;Unicode=True;";
conn = new
OracleConnection(strCon);
}
//写入数据库
private void
button1_Click(object sender, EventArgs
e)
{
OracleCommand cmd = new OracleCommand("",
conn);
string path =
@"C:\Users\lenovo\Desktop\01.pdf";
FileStream fs = new FileStream(path, FileMode.Open,
FileAccess.Read);
Byte[] fsByte = new byte[fs.Length]; //把图片转成 Byte型 二进制流
fs.Read(fsByte, 0, fsByte.Length); //把二进制流读入缓冲区
fs.Close();
cmd.CommandText = "insert into Student(id,name,storeblob)
values(1,‘aa‘,:zp)";
cmd.Parameters.Add(":zp", OracleType.BFile,
fsByte.Length);
cmd.Parameters[0].Value =
fsByte;
conn.Open();
cmd.ExecuteNonQuery();
MessageBox.Show("插入成功!");
conn.Close();
}
private void
button2_Click(object sender, EventArgs
e)
{
string
path =
@"C:\Users\lenovo\Desktop\2.pdf";
DataTable dt = new
DataTable();
OracleDataAdapter adapter = new OracleDataAdapter("select storeBlob from
student",
conn);
adapter.Fill(dt);
Byte[] filebyte =
(byte[])(dt.Rows[1][0]);
FileStream fs = new FileStream(path,
FileMode.Create);
fs.Write(filebyte, 0,
filebyte.GetLength(0));
fs.Close();
MessageBox.Show("读取成功!");
}
}
}
原文地址:http://www.cnblogs.com/wangcq/p/3778404.html