gpt4 book ai didi

c# - 从 mysql 数据库保存和检索图像

转载 作者:行者123 更新时间:2023-11-29 07:05:28 24 4
gpt4 key购买 nike

对于保存图像,我尝试使用此代码。

MySqlConnection mycon = new MySqlConnection(string.Format("Server=127.0.0.1;Port=3306;Database=test;Uid=root;Pwd=123456;"));
mycon.Open()
FileStream fs = new FileStream("b.jpg", FileMode.Open, FileAccess.Read);
int sizee = (int)fs.Length;
byte[] rawData = new byte[sizee+1];
fs.Read(rawData, 0, sizee);
fs.Close();
new MySqlCommand(string.Format("INSERT INTO image VALUES(NULL,'{0}',{1})", rawData, sizee), mycon).ExecuteNonQuery();

此代码工作正常并成功插入数据。但是当我尝试检索数据时它抛出异常没有找到适合完成此操作的成像组件。

这是用于检索数据的代码。

MySqlConnection mycon = new MySqlConnection(string.Format("Server=127.0.0.1;Port=3306;Database=test;Uid=root;Pwd=123456;"));
mycon.Open();
MySqlCommand mycom = new MySqlCommand("Select * from image", mycon);
MySqlDataReader myData = mycom.ExecuteReader();
myData.Read();
int filesize = myData.GetInt32(myData.GetOrdinal("size"));
byte[] mydatya=new byte[filesize];
myData.GetBytes(myData.GetOrdinal("myImage"), 0, mydatya, 0, filesize);
var bitmapImage = new BitmapImage();
bitmapImage.BeginInit();
bitmapImage.StreamSource = new MemoryStream(mydatya);
bitmapImage.EndInit();

最佳答案

通常认为更好的做法是仅将对文件的引用放在数据库中并将文件物理保存在文件夹中。

关于c# - 从 mysql 数据库保存和检索图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7435151/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com