知识大全 .Net在SqlServer中的图片存取技术
Posted 知
篇首语:不要让世界改变你的微笑,用你的微笑改变世界。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 .Net在SqlServer中的图片存取技术相关的知识,希望对你有一定的参考价值。
.Net在SqlServer中的图片存取技术 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
本文总结如何在 Net Winform和 Net webform()中将图片存入sqlserver中并读取显示的方法
使用将图片上传并存入SqlServer中 然后从SqlServer中读取并显示出来
一 上传并存入SqlServer
数据库结构
create table test
id identity( )
FImage image
相关的存储过程
Create proc UpdateImage
(
@UpdateImage Image
)
As
Insert Into test(FImage) values(@UpdateImage)
GO
在UpPhoto aspx文件中添加如下:
<input id= UpPhoto name= UpPhoto runat= server type= file >
<asp:Button id= btnAdd name= btnAdd runat= server Text= 上传 ></asp:Button>
然后在后置代码文件UpPhoto aspx cs添加btnAdd按钮的单击事件处理代码:
private void btnAdd_Click(object sender System EventArgs e)
//获得图象并把图象转换为byte[]
HttpPostedFile upPhoto=UpPhoto PostedFile;
int upPhotoLength=upPhoto ContentLength;
byte[] PhotoArray=new Byte[upPhotoLength];
Stream PhotoStream=upPhoto InputStream;
PhotoStream Read(PhotoArray upPhotoLength);
//连接数据库
SqlConnection conn=new SqlConnection();
conn ConnectionString= Data Source=localhost;Database=test;User Id=sa;Pwd=sa ;
SqlCommand cmd=new SqlCommand( UpdateImage conn);
cmd CommandType=CommandType StoredProcedure;
cmd Parameters Add( @UpdateImage SqlDbType Image);
cmd Parameters[ @UpdateImage ] Value=PhotoArray;
//如果你希望不使用存储过程来添加图片把上面四句代码改为
//string strSql= Insert into test(FImage) values(@FImage) ;
//SqlCommand cmd=new SqlCommand(strSql conn);
//cmd Parameters Add( @FImage SqlDbType Image);
//cmd Parameters[ @FImage ] Value=PhotoArray;
conn Open();
cmd ExecuteNonQuery();
conn Close();
二 从SqlServer中读取并显示出来
在需要显示图片的地方添加如下代码:
<asp:image id= imgPhoto runat= server ImageUrl= ShowPhoto aspx ></asp:image>
ShowPhoto aspx主体代码
private void Page_Load(object sender System EventArgs e)
if(!Page IsPostBack)
SqlConnection conn=new SqlConnection()
conn ConnectionString= Data Source=localhost;Database=test;User Id=sa;Pwd=sa ;
string strSql= select * from test where id= ;//这里假设获取id为 的图片
SqlCommand cmd=new SqlCommand()
reader Read();
Response ContentType= application/octet stream ;
Response BinaryWrite((Byte[])reader[ FImage ]);
Response End();
reader Close();
在winform中将图片存入sqlserver 并从sqlserver中读取并显示在picturebox中
存入sqlserver
数据库结构和使用的存储过过程 同上面的一样
在窗体中加一个OpenFileDialog控件 命名为ofdSelectPic
在窗体上添加一个打开文件按钮 添加如下单击事件代码
Stream ms;
byte[] picbyte;
//ofdSelectPic ShowDialog();
if (ofdSelectPic ShowDialog()==DialogResult OK)
if ((ms=ofdSelectPic OpenFile())!=null)
//MessageBox Show( ok );
picbyte=new byte[ms Length];
ms Position= ;
ms Read(picbyte Convert ToInt (ms Length));
//MessageBox Show( 读取完毕! );
//连接数据库
SqlConnection conn=new SqlConnection();
conn ConnectionString= Data Source=localhost;Database=test;User Id=sa;Pwd=sa ;
SqlCommand cmd=new SqlCommand( UpdateImage conn);
cmd CommandType=CommandType StoredProcedure;
cmd Parameters Add( @UpdateImage SqlDbType Image);
cmd Parameters[ @UpdateImage ] Value=picbyte;
conn Open();
cmd ExecuteNonQuery();
conn Close();
ms Close();
读取并显示在picturebox中
添加一个picturebox 名为ptbShow
添加一个按钮 添加如下响应事件
SqlConnection conn=new SqlConnection();
conn ConnectionString= Data Source=localhost;Database=test;User Id=sa;Pwd=sa ;
string strSql= select FImage from test where id= ;
SqlCommand cmd=new SqlCommand(strSql conn);
conn Open();
SqlDataReader reader=cmd ExecuteReader();
reader Read();
MemoryStream ms=new MemoryStream((byte[])reader[ FImage ]);
Image image=Image FromStream(ms true);
reader Close();
conn Close();
cha138/Article/program/net/201311/13722相关参考
知识大全 ASP.NET如何存取 SQLServer数据库图片
ASP.NET如何存取SQLServer数据库图片 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 ASP.NET如何存取SQL Server数据库图片
ASP.NET如何存取SQLServer数据库图片 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 ADO.NET Entity Framework存取数据库中的图片
ADO.NETEntityFramework存取数据库中的图片 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来
知识大全 ADO.NET Entity Framework存取数据库中图片
ADO.NETEntityFramework存取数据库中图片 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看
知识大全 在ASP.net 中从sqlserver检索(retrieve)图片
在ASP.net中从sqlserver检索(retrieve)图片 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一
知识大全 基于SQL Server的Asp.net图片存储技术
基于SQLServer的Asp.net图片存储技术 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 在Delphi中简单的存取JPEG文件到SQLServer
在Delphi中简单的存取JPEG文件到SQLServer 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一
知识大全 asp.net 将一个图片以二进制值的形式存入Xml文件中的实例代码
asp.net将一个图片以二进制值的形式存入Xml文件中的实例代码 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一
ADO.NET的并行控制与数据存取冲突侦测 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 
blob表 idint namechar blobimage&