A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hehe04 中级黑马   /  2012-9-3 21:52  /  2979 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

如题,怎么把图片保存在数据库中,我有800多张图片,用户在使用时选择某张图片的名字,就可以显示这张图片

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

4 个回复

倒序浏览
FileStream fImageFile = new FileStream("ImagePath", FileMode.Open);
byte[] fImageByte = new byte[(int)fImageFile.Length];//把图片转成二进制流
fImageFile.Read(fImageByte, 0, fImageByte.Length);
using (SqlConnection conn = new SqlConnection("ConnectionString"))
{
    SqlCommand comm = new SqlCommand("Insert Into Table1 (Image) Values (@Image)", conn);
    comm.Parameters.Add(new SqlParameter(@Image, fImageByte));
    comm.Parameters.Add("@Image", SqlDbType.Binary);//@Image是sql语句里面的参数,使用时可以根据情况传参。
    comm.Parameters["@Image"] = fImageByte;//存入数据库
    conn.Open();
    comm.EndExecuteNonQuery();
}
回复 使用道具 举报
你可以把你的图片放在指定的盘符下,在数据库里写上相应的图片路径,这样就可以显示了。

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

回复 使用道具 举报
其实在实际开发中 图片一般不会放入数据库中,一般是把图片让如一个图片文件夹中,来保存图片。而数据库中只保存个存放图片的文件路径,一般以字符的形势保存。
不知道你的具体需求是干嘛?数据库中保存图片也是可以的,不过一是占用支援,二是存取比较费时,还有图片存放在数据库是要把数据格式修改掉的。具体你可以看下数据库的存放格式有专门保存成图片文件的格式。可是我在实际工作中从来没有把图片放入过数据库。也就是在学习的那时候做过练习放入过。
若真有实际寻求,请哪里来分享下,我也想了解下什么情况下需要把图片文件存放在数据库中。

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

回复 使用道具 举报
一般都不会把图片文件存储到数据库中,而是用一个文件夹来存储图片文件,数据库中只存储图片文件的路径即可
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马