。它是一个字符串,所以数据库字段的类型可使用varchar可变的,长度不超过255。在前台调用时,需要将路径放置在img标签的src属性中,即可显示
thispictureBox1Image
=
ImageFromStream(thisopenFileDialog1OpenFile());
//获取当前的路径
string
path
=
openFileDialog1FileNameToString();
//将制定路径的添加到FileStream类中
FileStream
fs
=
new
FileStream(path,
FileModeOpen,
FileAccessRead);
//通过FileStream对象实例化BinaryReader对象
BinaryReader
br
=
new
BinaryReader(fs);
//通过BinaryReader类对象的ReadBytes()方法将FileStream类对象转化为二进制数组
byte[]
imgBytesIn
=
brReadBytes(ConvertToInt32(fsLength));第二步:
//将添加到数据库中
string
sql="insert
into
pic
values(@pic)";
SqlParameter[]
param
=
new
SqlParameter[]
{
new
SqlParameter("@pic",
imgBytesIn)
};
DBHelperGetExecuteQuery(sql,
param);第三步:
//将从数据库中取出
string
sql="select
from
pic
where
id=0";
SqlDataReader
reader
=
DBHelperGetExecuteReader(sql,
null);
MemoryStream
mss
=
null;
一般都是这样的,就是在你服务器有一个专门放置的文件夹,然后数据库保存的是你服务器的路径。需要用的时候就去数据库里面取路径。得到路径以后你想怎么处理是你的事情了。
至于如何去数据库取路径这个就是简单的db *** 作。
加载驱动类:
ClassforName(DBDriver);
获取连接:
Connection
conn
=
DriverManagergetConnection(url,username,password);
创建 *** 作对象:
PreparedStatement
stmt
=
conprepareStatement(sql);
执行 *** 作:
ResultSet
rs
=
stmtexecuteQuery();
遍历结果:
List
list
=
new
ArrayList();
while(rsnext()){
//具体 *** 作,通常用rsgetString(name)取值
Image
img
=
new
Image();//类对应你数据库中表格
imgsetSrc(rsgetString("src"));//假设你数据库中image表中地址字段是src
listadd(img);
}
记得关闭资源:
rsclose();
stmtclose();
conclose();
看你的意思是已经取出来了不知道怎么显示:
你取出来之后可以把放在一个list里面然后去页面上遍历这个list
<c:forEach
var="chakan1"
items="list">
<tr>
<td>
<img
src="${chakan1src}"/>
</td>
</tr>
</c:forEach>
大致应该是这样
一般图像是不保存在数据库的而是先将放在工程下的某个文件夹中,将所在的工程文件路径存在数据库中,当程序加载的时候,从数据库中读取的路径,然后根据路径在工程的文件夹中读取文件
以上就是关于数据库怎么储存图片全部的内容,包括:数据库怎么储存图片、C#怎么将图片保存到SQL数据库、java如何将图片保存在数据库中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)