我有一个数据库(sql server 2008),我在visual studio 2010中使用c#.
我想与我的数据库建立连接.我已经为此编写了如下代码:
SqlConnection mySqlConnection = new SqlConnection
("Data Source=servername\\SQL2008; Initial Catalog=MyData;UID=MyID;PWD=mypassword;");
SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
mySqlCommand.CommandText = "SELECT image_column FROM images_table ";
mySqlConnection.Open();
SqlDataReader productsSqlDataReader = mySqlCommand.ExecuteReader();
我不知道如何继续前进.我的意思是在执行上述语句后如何从阅读器中提取列?此外,我需要逐行遍历整个列并将每个图像转换为IContent项.我是否必须为此编写自己的转换器,或者是否有任何.NET类已经执行此操作?
继承人的情景.我有一个20列的表,其中一列是images_column.该列是唯一的列,其中的图像存储为二进制数据. remainingig列是通常的整数(其大小值)和与该特定图像相关联的字符串(其名称,位置等).我希望现在很清楚.
谢谢.
string conn = "Data Source=servername\\SQL2008; Initial Catalog=MyData;UID=MyID;PWD=mypassword;";
using (SqlConnection dbConn = new SqlConnection(conn))
{
dbConn.Open();
string sql = "SELECT DATALENGTH(image_column), image_column FROM images_table ";
using (SqlCommand cmd = new SqlCommand(sql, dbConn))
{
using (SqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
int size = reader.GetInt32(0);
byte[] buff = new byte[size];
reader.GetBytes(1, 0, buff, 0, size);
MemoryStream ms = new MemoryStream(buff, 0, buff.Length);
ms.Write(buff, 0, buff.Length);
StoreImage(Image.FromStream(ms, true));
}
}
}
}
查看更多关于c# – 使用图像作为数据库表列的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did69384