C# 存取SqlServer中的Image类型
2010-11-02 23:28
253 查看
http://www.cnblogs.com/liujiang/archive/2009/03/10/1407578.html
有时候我们需要将图片存到数库中的Imgae类型的字段下,以下是存取的两种方法:
存:
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;
}
}
有时候我们需要将图片存到数库中的Imgae类型的字段下,以下是存取的两种方法:
存:
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;
}
}
相关文章推荐
- C# 存取SqlServer中的Image类型
- C#关于sqlserver中读取image类型
- 使用asp.net和C#如何存取Sql Server2000中的Image(16)类型的字段?
- 数据库中Image类型的数据的存取(For C#/ASP.NET)
- C#读写SQLSERVER中Image类型图片
- 数据库中Image类型的数据的存取(For C#/ASP.NET)
- CodeSmith,SqlServer,C#中的类型对照
- C#中数据库中image类型可转为byte[]类型
- 存取显示Image类型的字段
- asp.net(c#)实现从sqlserver存取二进制图片
- CodeSmith,SqlServer,C#中的类型对照
- CodeSmith,SqlServer,C#中的类型对照
- C#操作SQL Server中的Image类型数据
- SQLSERVER与C#中数据类型的对应关系
- C#Enum类型向sqlserver插入问题
- SQLServer 2005 中的类型 与 C# 中的类型 对应 关系
- sqlserver数据类型与C#数据类型对应关系
- sqlserver与c#中数据类型的对应关系
- 转:SqlServer中的datetime类型的空值和c#中的DateTime的空值的研究
- sqlserver与c#中数据类型的对应关系