<< 2025 年 5 月 >>
    123
45678910
11121314151617
18192021222324
25262728293031
回首頁 | 到今日 | 到本月

文章分類

最新文章

在SQL SERVER中存圖片(把圖片存在db裡)                          

2018/6/16 下午 02:02:59發表      點閱: 3879    推荐 :475                          


 

內容面板收納

有時會需要把圖片存在db中,找了一下才知道怎麼存…

簡單的說就是把圖片寫到db中時用byte寫入即可。

流程如下~



開table,欄位使用image

開新aspx

使用FileUpload

Save(){
  SqlCommand cmd = new SqlCommand();
            SqlConnection conn = new SqlConnection();
            conn.ConnectionString = sqlcn;
            cmd.Connection = conn;
            string SQL = "";
            SQL += "insert into" + "\n";
            SQL += "tb" + "\n";
            SQL += "(" + "\n";
            SQL += "img_data" + "\n";
            SQL += ",img_type" + "\n";
            SQL += ")" + "\n";
            SQL += "values" + "\n";
            SQL += "(" + "\n";
            SQL += "@img_data" + "\n";
            SQL += ",'image/jpeg'" + "\n";
            SQL += ")" + "\n";
            cmd.CommandText = SQL;
            cmd.Parameters.Add("@img_data", SqlDbType.Image).Value = FileUpload1.FileBytes;
            try
            {
                conn.Open();
                cmd.ExecuteNonQuery();
                ScriptManager.RegisterClientScriptBlock(Button1, Button1.GetType(), "ok", "alert('上傳成功');", true);
                ddlList();
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }
            finally
            {
                conn.Close();
                conn.Dispose();
                cmd.Dispose();
            }
}


就這樣,存入完成。



讀取:

Show(){
SqlDataReader reader = cmd.ExecuteReader();
            if (reader.Read())
            {
                bytes = (byte[])reader["img_data"];
                Response.ContentType = "image/jpeg";
                Response.BinaryWrite(bytes);
              
            }
}

就這樣。



張貼時間:18th December 2013,張貼者:Zemus Zhan
  推荐分享 推薦本文到Twitter推特去! 推薦本文到Plurk噗浪去! 推荐本文到 facebook臉書   
 

我要評論

標題
暱稱
郵件
內容
* 驗證碼