以下的文章主要介绍的是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图片的介绍,不知道各位对MySQL的认识是不是更上一层楼了,时时关注ITJS,学习最新Mysql技术。