以下的文章主要介紹的是MySQL保存jpg 圖片的實際操作過程,我們大家都知道MySQL數據庫下可以通過blob, mediumbolb,l ongblob等一些類型來保存圖片,當然不同的相關圖片文件類似操作會有所不同,例如.bmp格式圖片。
示例代碼:
保存圖片到MySQL
- private void btnOpenFile_Click(object sender, EventArgs e)
- {
打開圖片文件
- this.openFileDialog1.InitialDirectory = "C:\\";
- this.openFileDialog1.FileName = "";
- this.openFileDialog1.ShowDialog();
連接字符串
- string connStr = "server=vitus;User Id=root;Password=******;Persist Security Info=True;database=Test";
- string sql = string.Format("insert into ImageTest values(@id,@picture)");
- FileStream fs = new FileStream(this.openFileDialog1.FileName,FileMode.Open);
- Byte[] bts = new Byte[fs.Length-1];
- fs.Read(bts,0,(int)fs.Length-1);
- MySqlConnection sqlConn = new MySqlConnection(connStr);
- MySqlCommand sqlComm = new MySqlCommand(sql,sqlConn);
- sqlComm.Parameters.Add("@id", MySqlDbType.Int32, 1);
- sqlComm.Parameters["@id"].Value = 2;
- sqlComm.Parameters.AddWithValue("@picture", bts);
- sqlConn.Open();
- sqlComm.ExecuteNonQuery();
- sqlConn.Clone();
- }
從MySQL中讀取並顯示圖片
- private void btnImageView_Click(object sender, EventArgs e)
- {
- string connStr = "server=vitus;User Id=root;Password=******;Persist Security Info=True;database=Test";
- string sql = string.Format("select * from ImageTest where id=2");
- MySqlConnection sqlConn = new MySqlConnection(connStr);
- MySqlCommand sqlComm = new MySqlCommand(sql, sqlConn);
- sqlConn.Open();
- MySqlDataReader dr = sqlComm.ExecuteReader(CommandBehavior.CloseConnection);
- Image image = null;
- while (dr.Read())
- {
- MemoryStream buff = new MemoryStream((byte[])dr[1]);
- image = Image.FromStream(buff, true);
- buff.Close();
- }
- this.pictureBox1.Image = image;
- }
以上的相關內容就是對MySQL保存jpg圖片的介紹,望你能有所收獲。