簡體   English   中英

在SQL Server的Varbinary(MAX)或Image數據類型中存儲轉換為字節數組的位圖

[英]Store Bitmap converted to byte array in Varbinary(MAX) or Image data type of SQL Server

我想將圖像存儲在SQL Server數據庫中。 我已將圖像轉換為字節數組,並且數據庫中列的數據類型為varbinary(MAX)但即使將其類型更改為Image它也無法正常工作,但得到的結果相同。

我跟蹤了許多來自stackoverflow,代碼項目,代碼夢想的鏈接,但是找不到我的解決方案,我的代碼可以在數據庫中插入字節數組

string query = @"INSERT INTO myTable (ID, byteArray, DateTime) VALUES (@ID, @byteArray, @datetime)";

try
{
      command = new SqlCommand(query, base.conn);
      command.Parameters.AddWithValue("@ID", id);
      command.Parameters.AddWithValue("@byteArray", ss); // ss is byte[] from arguments
      command.Parameters.AddWithValue("@datetime", DateTime.Now);

      base.Open();
      if (command.ExecuteNonQuery() > 0)
      {
            base.Close();
            return true;
      }
      else
      {
             base.Close();
             return false;
      }
}
catch (SqlException ex)
{
      base.Close();
      return false;
}

我也嘗試過

command = new SqlCommand(query, base.conn);
command.Parameters.Add("@ID", id);
command.Parameters.Add("@byteArray", ss); // ss is byte[] from arguments
command.Parameters.Add("@datetime", DateTime.Now);

它將存儲在數據庫中的東西

第三列是圖像類型,我正在其中發送字節數組

但它將在第三列中顯示為<Binary data>的值是什么????

當某些二進制數據(如圖片)存儲在該列中時,SQL Server Management Studio將顯示<binary data> 這是設計的作品

您實際上不會在SQL Server Management Studio中看到圖片。 我很確定您的代碼可以正常工作-只有您對Management Studio可以做什么的期望太高了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM