日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

NET 下数据库图片的存入与读取

發布時間:2025/3/15 数据库 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NET 下数据库图片的存入与读取 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

據庫結構
create table test
{
id int identity(1,1),
FImage image
}


相關的存儲過程
Create proc UpdateImage (@UpdateImage Image)
As
Insert Into test (FImage) values (@UpdateImage)
GO


OpenFileDialog openfileDialog = new OpenFileDialog();
openfileDialog.Filter = "Picture Files(*.jpg)|*.jpg|Bmp(*.bmp)|*.bmp|All Files(*.*)|*.*";
FileStream fileStream;
openfileDialog.ShowDialog();
string filepath = openfileDialog.FileName;
if (filepath.Trim() != "")
{
//獲得圖象并把圖象轉換為byte[]
fileStream = new FileStream(filepath, FileMode.Open, FileAccess.Read);
byte[] photoArray = new byte[(int)fileStream.Length];
fileStream.Read(photoArray, 0, photoArray.Length);
fileStream.Close();
try
{
???? pictureBox1.SizeMode = PictureBoxSizeMode.Normal;
???? pictureBox1.Image = System.Drawing.Image.FromFile(filepath);
}
catch (Exception ex)
{
???? MessageBox.Show(ex.Message);
}
//連接數據庫
SqlConnection myConnection = new SqlConnection();
myConnection.ConnectionString ="Data Source=localhost;Database=test;User Id=sa;Pwd=sa";
SqlCommand mySqlCommand = new SqlCommand("UpdateImage", myConnection);
mySqlCommand.CommandType = CommandType.StoredProcedure;
mySqlCommand.Parameters.Add("@UpdateImage", SqlDbType.Image);
mySqlCommand.Parameters["@UpdateImage"].Value = photoArray;
//如果不使用存儲過程,可以把上面四句代碼改為:
//string strSql="Insert into test(FImage) values(@FImage)";
//SqlCommand cmd=new SqlCommand(strSql,conn);
//cmd.Parameters.Add("@FImage",SqlDbType.Image);
//cmd.Parameters["@FImage"].Value=photoArray;
myConnection.Open();
mySqlCommand.ExecuteNonQuery();
myConnection.Close();
}
//以下是從數據庫讀取圖片
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source=localhost;Database=test;User Id=sa;Pwd=sa";
string strSql = "select FImage from test where id=1";
SqlCommand cmd = new SqlCommand(strSql, conn);
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();
reader.Read();
MemoryStream ms = new MemoryStream((byte[])reader["FImage"]);
System.Drawing.Image image = System.Drawing.Image.FromStream(ms, true);
reader.Close();
conn.Close();
pictureBox1.Image = image;

轉載于:https://www.cnblogs.com/qinhaijun/archive/2011/08/26/2154415.html

總結

以上是生活随笔為你收集整理的NET 下数据库图片的存入与读取的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。