加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 使用图像作为数据库表列

发布时间:2020-12-15 21:11:39 所属栏目:百科 来源:网络整理
导读:我有一个数据库(sql server 2008),我在visual studio 2010中使用c#. 我想与我的数据库建立连接.我已经为此编写了如下代码: SqlConnection mySqlConnection = new SqlConnection ("Data Source=servernameSQL2008; Initial Catalog=MyData;UID=MyID;PWD=my
我有一个数据库(sql server 2008),我在visual studio 2010中使用c#.

我想与我的数据库建立连接.我已经为此编写了如下代码:

SqlConnection mySqlConnection = new SqlConnection
    ("Data Source=servernameSQL2008; 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=servernameSQL2008; 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,buff,size);
                        MemoryStream ms = new MemoryStream(buff,buff.Length);
                        ms.Write(buff,buff.Length);
                        StoreImage(Image.FromStream(ms,true));
                    }
                }
            }
        }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读