首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >C# 利用datatable将sqlserver中的Image取出来

C# 利用datatable将sqlserver中的Image取出来

作者头像
云未归来
发布2025-07-18 12:24:40
发布2025-07-18 12:24:40
1030
举报

先把sqlserver数据库一个表装载到datatable里面,然后进行如下操作

               Bitmap IMG!=null;

                Bitmap IMG2=null;

                MemoryStream ms=null;

                 byte[] b1 = (byte[])dt.Rows[0]["照片1"];                   byte[] b2 = (byte[])dt.Rows[0]["照片2"];                   ms = new MemoryStream(b1);                 IMG1 = new Bitmap(ms);//取出照片1                  ms = new MemoryStream(b2);                IMG2= new Bitmap(ms);//取出照片2                 ms.Flush();

                ms.Close();

网上还有好的办法。例如

存: public void Save() { using(System.IO.FileStream stream = new System.IO.FileStreamfile,System.IO.FileMode.Open,System.IO.FileAccess.Read) { byte[] buffer = new byte[stream.Length]; stream.Read(buffer, 0, (int)stream.Length); stream.Close(); string strName = System.IO.Path.GetFileNameWithoutExtension(file); SqlCommand cmd = new SqlCommand("Insert into Temp(name,photo) values(@name,@image)", sqlConn); cmd.Parameters.Add("@name", SqlDbType.VarChar).Value = strName; cmd.Parameters.Add("@image", SqlDbType.Image).Value = buffer; cmd.ExecuteNonQuery(); } } 取: public void GetImage() { SqlCommand cmd = new SqlCommand(@"SELECT name, photo FROM Temp", sqlConn); sqlConn.Open(); SqlDataReader reader = cmd .ExecuteReader(); if (reader.Read()) { image_filename= (string) reader.GetValue(0); byte[] image_bytes = (byte[]) reader.GetValue(1); MemoryStream ms = new MemoryStream(image_bytes); Bitmap bmap = new Bitmap(ms); return bmap; } }

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档