<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    winform 中往數據庫中添加圖片的兩種方式

    方法一:在數據庫中添加圖片名字,然后把圖片存在指定的文件夾中

               這種方法存起來簡單,但是刪除的時候麻煩。

               存:在數據庫中建一個文本字段(access)或者varchar字段(sqlserver)長度能放上一張圖片即可

                     過程:就是一般的存的insert into 

                              舉個栗子:sql數據庫中有一個id字段 自增類型 一個name字段,用于存放圖片名稱的類型是varchar類型

                              這winform界面中你可以拖動一個TextBox,用于存放路徑,一個Button這個就不說了,還有一個openFileDialog

                             if (this.openFileDialog1.ShowDialog() == DialogResult.OK)

                              {

                                   this.textBox1.Text = openFileDialog1.FileName;

                              } //打開路徑,必不可少的     這些都是是在button單擊事件里完成的

                              if (openFileDialog1.FileName.Length > 0) // 判斷openFileDialog1路徑的長度

                               {

                                      string oldName = openFileDialog1.FileName;            //定義一個string類型的變量 用于存放【文件路徑】

                                       string[] splitName = oldName.Split('.');                     //為獲取文件的擴展名做準備的

                                       string ext = splitName[splitName.Length - 1];          //文件的擴展名

                                        if (ext == "jpg" || ext == "gif" || ext == "bmp" || ext == "JPG")   //限制上傳圖片的格式

                                        {

                                             string dbName = DateTime.Now.ToString("yyyyMMddhhmmss") + "." + ext; //給上傳的圖片起個名字!以時間命名

                                             string newName = AppDomain.CurrentDomain.BaseDirectory  + dbName;  //新路徑!這是個相對路徑

                                             File.Copy(oldName, newName, true);  //把文件從以前的路徑復制到新的路徑中去

                                             //下面就開始添加到數據庫里面了

                                             string constring="";//數據庫的連接字符串

                                             using (SqlConnection con=new SqlConnection (constring))

                                              {

                                                  con.open();

                                                  stirng sql="insert into shujukuname (name) values(@name)"; //因為id自增的這里只需要添加圖片名稱

                                                  SqlCommand cmd = new SqlCommand(sql,con);

                                                  cmd.Parameters.Add("@name",SqlDbType.VarChar).Value=TextBox1.Text.Trim();

                                                  cmd.ExecuteNonQuery();

                                                  con.Close();

                                              }

                                        }                     

                               }                                                                                              //這樣就添加完成了

                顯示圖片:  這里一定要有一個PictureBox1

                              要從數據庫中取出這個name

                             using (SqlConnection con=new SqlConnection (constring))

                             {

                                  string sql="select name from shujukuname where id=' 1'   ";//當id=1的時候查詢的圖片的名稱

                                   SqlDataAdapter da = new SqlDataAdapter(sql, con);

                                   con.Open();

                                   DataTable dt=new  DataTable();

                                   da.Fill(dt);

                                   string name =dt.Rows[0]["name"].ToString();

                                   con.Close();                          //這樣就獲取出name來了,然后進行顯示

                             }

                                   string path=Application.StartupPath + "http://"+ name;  //一張圖片的路徑

                                   if(File.Exists(path)) //根據這個路勁顯示有沒有這張圖片

                                   {

                                          PictureBox1.Image=Image.FromFile(path);                  //PictureBox1顯示的path路徑的圖片

                                   }

                                  else

                                    {

                                            PictureBox1.Image=Image.FromFile(Application.StartupPath + "http://" +默認圖片);  //PictureBox1顯示的默認的的圖片

                                    }

    winform 中往數據庫中添加圖片的兩種方式之二:直接把圖片添加在sqlserver中

    首先要有一個image或者binary類型的字段

    這種是以二進制形式插入到數據庫中

                     FileStream fs = new FileStream(pathName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
                     byte[] buffByte = new byte[fs.Length];
                     fs.Read(buffByte, 0, (int)fs.Length);
                     fs.Close();                                        //數據庫字段為image類型,將圖片轉化為byte[],保存到數據庫
          
                     SqlConnection   db   =   new   SqlConnection(strConn); 
                     db.Open(); 

                     string   strSQL   =   "INSERT   INTO   shujuktable (name)   values   (@name) "; 
                     SqlCommand   cmd   =   new   SqlCommand(strSQL,   db); 
                     cmd.Parameters.Add( "@name",   SqlDbType.Image); 
                     cmd.Parameters[ "@name"].Value   =   buffByte

                     cmd.ExecuteNonQuery();                                       //保存圖片的過程

    清理資源

    以上這部分是如何添加圖片,下面這部分是讀取圖片

    -————————————————————————————————————————————————

                 SqlConnection conn = new SqlConnection(strConn);


                 DataTable dt = new DataTable();
                 SqlDataAdapter adp = new SqlDataAdapter("select name from shujuktable where ID='1'", conn);
                 adp.Fill(dt);
                 byte[] buffByte = (byte[])dt.Rows[0][“name”];

                 MemoryStream ms = new MemoryStream(buffByte);
                 Image image = Image.FromStream(ms, true);

                 this.pictureEdit1.Image = image;

    posted on 2011-09-08 10:01 SkyDream 閱讀(3285) 評論(0)  編輯  收藏 所屬分類: ASP.NET

    <2011年9月>
    28293031123
    45678910
    11121314151617
    18192021222324
    2526272829301
    2345678

    導航

    統計

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲经典在线中文字幕| 亚洲av永久无码天堂网| 国内精品乱码卡1卡2卡3免费 | 免费jjzz在线播放国产 | 野花高清在线电影观看免费视频| 亚洲大码熟女在线观看| 精品亚洲成α人无码成α在线观看| 中文字幕无码一区二区免费| 亚洲国产电影在线观看| 亚洲成AV人在线观看网址| 三年片在线观看免费大全电影| 亚洲欧美日韩国产成人| 国产亚洲一区二区三区在线观看| 三年片在线观看免费大全| 国产高清对白在线观看免费91| 亚洲天堂2017无码中文| 亚洲欭美日韩颜射在线二| 四虎www成人影院免费观看| 中文精品人人永久免费| 亚洲日韩精品无码专区加勒比| 香蕉视频在线观看亚洲| 四虎影视永久免费视频观看| 中文字幕免费视频| 男女一进一出抽搐免费视频| 亚洲中文字幕久久久一区| 亚洲色偷偷综合亚洲AVYP| 在线观看视频免费国语| 日韩精品人妻系列无码专区免费| 精品国产亚洲一区二区三区在线观看| 久久亚洲成a人片| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 伊人久久亚洲综合影院首页| 亚洲伊人久久综合影院| 精品福利一区二区三区免费视频| 一区二区三区免费高清视频| 亚洲国产日韩a在线播放| 亚洲日本在线播放| 久久精品国产亚洲AV麻豆不卡 | 永久黄网站色视频免费直播 | 亚洲日韩精品A∨片无码| 免费又黄又爽又猛的毛片 |