社区
C#
帖子详情
SQLServer数据库中图片的存入和读取
csts_005
2011-03-25 10:50:21
SQLServer数据库中图片的存入和读取。
1、数据库中存放图片的字段是什么类型的?
2、把图像转化为二进制流存入数据库的方法?
3、把二进制流转化图片的方法?
...全文
855
26
打赏
收藏
SQLServer数据库中图片的存入和读取
SQLServer数据库中图片的存入和读取。 1、数据库中存放图片的字段是什么类型的? 2、把图像转化为二进制流存入数据库的方法? 3、把二进制流转化图片的方法?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
26 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
honghong_vip
2012-10-10
打赏
举报
回复
谢谢各位的指导
sea_star666
2012-03-01
打赏
举报
回复
谢谢,希望有用
sunfor
2011-03-29
打赏
举报
回复
[Quote=引用 17 楼 lfqsy 的回复:]
围观,如果用得多,二进制存到数据库会越来越多,查询的时候不晓得啥子效果
[/Quote]
如果怕数据多影响速度,可独立建一新表,只有编号+图像两个字段,平时只用员工表,只有查员工图像时打开图像表就不会有影响了。
Daqing
2011-03-29
打赏
举报
回复
1.2000 image ,2005是binary或者varbinary
2.FileStream-fs-> BinaryReader br = new BinaryReader(fs)或者fs.Read(byt[],0,length)
3.MemoryStream ms=new MemoryStream(datatable["图片"])--Image im=Image.FromStream(ms);
艾莎云
2011-03-29
打赏
举报
回复
貌似可以打包吧 ,我记得Access也是这样,存储图片就是直接用
xrongzhen
2011-03-29
打赏
举报
回复
SQLServer数据库中图片的存入和读取。
1、数据库中存放图片的字段是什么类型的?
image
2、把图像转化为二进制流存入数据库的方法?
byte[]数组 可以用File.ReadAllBytes()或FileStream的Read()等方法
然后Insert Into table value(@image)...
3、把二进制流转化图片的方法?
同样的读入byte[] 实例MemoryStream 然后用FromStream()
guoyanhong1111
2011-03-29
打赏
举报
回复
1、图片存入数据库
本实例主要介绍如何将图片存入数据库。将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStream类、BinaryReader把图片读成字节的形式,赋给一个字节数组,然后用ADO.SqlCommand对象的ExecuteNonQuery()方法来把数据保存到数据库中。主要代码如下:
/// <summary>
/// 将图片以二进制读入数据库
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string fullpath = openFileDialog1.FileName;//文件路径
FileStream fs = new FileStream(fullpath, FileMode.Open);
byte[] imagebytes = new byte[fs.Length];
BinaryReader br = new BinaryReader(fs);
imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length));
//打开数所
SqlConnection con = new SqlConnection("server=(local);database=zy_info;integrated security=true");
con.Open();
SqlCommand com = new SqlCommand("insert into tb_text values(@guatu)", con);
//"update yijing set guatu='"+
com.Parameters.Add("guatu", SqlDbType.Image);
com.Parameters["guatu"].Value = imagebytes;
com.ExecuteNonQuery();
con.Close();
MemoryStream ms = new MemoryStream(imagebytes);
Bitmap bmpt = new Bitmap(ms);
this.pictureBox1.Image = bmpt;
}
}
2、图片读出数据库
/// <summary>
/// 读出二进制图片数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{
byte[] imagebytes = null;
//打开数据库
SqlConnection con = new SqlConnection("server=(local);database=zy_info;integrated security=true");
con.Open();
SqlCommand com = new SqlCommand("select top 1* from tb_text", con);
SqlDataReader dr = com.ExecuteReader();
while (dr.Read())
{
imagebytes = (byte[])dr["guatu"];
}
dr.Close();
com.Clone();
con.Close();
MemoryStream ms = new MemoryStream(imagebytes);
Bitmap bmpt = new Bitmap(ms);
this.pictureBox1.Image = bmpt;
//dr.Close();
//com.Clone();
//con.Close();
}
这个可以成功的!
lfqsy
2011-03-29
打赏
举报
回复
围观,如果用得多,二进制存到数据库会越来越多,查询的时候不晓得啥子效果
zhong6739168
2011-03-29
打赏
举报
回复
我有关于数据库存储和读取图片的代码!
http://download.csdn.net/source/3137639
zzm1122
2011-03-29
打赏
举报
回复
刚做过这个模块、其实也不难 有需要找我要把
xiongxyt2
2011-03-26
打赏
举报
回复
图片的插入和读取
sswp7
2011-03-26
打赏
举报
回复
[Quote=引用 7 楼 xiaoqiu1234 的回复:]
顺便请教下各位大侠,如果是考勤机和二代身份证,读出来的头像图片是怎样存储的,存储在本地的什么位置???
你用的什么写的 C# winfrom程序???
[/Quote]
猜它用的VS2008,如果是用VS2008跟“如果是考勤机和二代身份证,读出来的头像图片是怎样存储的,存储在本地的什么位置???”问题有多大关系吗? 对了,观望这个问题。。。
cjh200102
2011-03-26
打赏
举报
回复
各有所长。那种都行,只要合适。
郗晓勇
2011-03-26
打赏
举报
回复
[Quote=引用 11 楼 leroncheung 的回复:]
引用 3 楼 fangxinggood 的回复:
1. 数据库存放的是 Image 类型
2. 用 byte[] data = File.ReadAllBytes(图片路径)
3. byte[] -> MemoryStream -> Bitmap.FromStream
二进制存储更安全。
[/Quote]
必须的 顶一个
leroncheung
2011-03-26
打赏
举报
回复
[Quote=引用 3 楼 fangxinggood 的回复:]
1. 数据库存放的是 Image 类型
2. 用 byte[] data = File.ReadAllBytes(图片路径)
3. byte[] -> MemoryStream -> Bitmap.FromStream
[/Quote]
二进制存储更安全。
BEIDOUJS
2011-03-26
打赏
举报
回复
过程重要,结果更重要![Quote=引用楼主 csts_005 的回复:]
SQLServer数据库中图片的存入和读取。
1、数据库中存放图片的字段是什么类型的?
2、把图像转化为二进制流存入数据库的方法?
3、把二进制流转化图片的方法?
[/Quote]
BEIDOUJS
2011-03-26
打赏
举报
回复
我也是这样做的,这样不仅简单方便还便于管理。[Quote=引用 5 楼 ttiimm11 的回复:]
我一般都说把图片存在本地的文件夹内,然后在数据库里存路径
[/Quote]
xiaoqiu1234
2011-03-26
打赏
举报
回复
顺便请教下各位大侠,如果是考勤机和二代身份证,读出来的头像图片是怎样存储的,存储在本地的什么位置???
你用的什么写的 C# winfrom程序???
xiaoqiu1234
2011-03-26
打赏
举报
回复
[Quote=引用 5 楼 ttiimm11 的回复:]
我一般都说把图片存在本地的文件夹内,然后在数据库里存路径
[/Quote]
楼上说的是对的,也是最简单方便的方法,只存放路径,string类型就可以了
ttiimm11
2011-03-26
打赏
举报
回复
我一般都说把图片存在本地的文件夹内,然后在数据库里存路径
加载更多回复(4)
C#
图片
存储及
读取
至
sqlserver
数据库
C#pictureBox
图片
存储及
读取
(显示)至
sqlserver
数据库
示例 一例全明了! 如有程序问题或没有解决的请给予零星 此程序为VS2008版本 VS2008以下版本有txt代码 且有示例窗体
图片
及控件 VS高版本可兼容 再也不用担心版本问题啦~~
读取
Excel
中
的数据,显示在DataGridView,并
存入
SQL Server
数据库
这是一个C# Form程序,实现见excel
中
的数据读到DataSet并显示到datagridview上,并
存入
sql server
数据库
C#将word文件
存入
数据库
与
读取
把word文件转为二进制文件流
存入
数据库
,并且实现
读取
的小案例
java
读取
xml文件并
存入
数据库
java从xml
中
读入数据并
存入
到
sqlserver
2005
数据库
中
java
读取
excel并
存入
数据库
java从excel
中
读取
数据并保存到
sqlserver
数据库
中
。 其
中
所需包需要自己下,一个是微软的
sqlserver
连接驱动包。还有一个是连接excel相关的包,网上都能找到。
C#
111,098
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章