C#用MySql.Data.dll插入Blob数据失败 [已经解决]

我们在用MySQL数据库存储图片的时候一般都用Blob类型,里面存储的是二进制数据,也就是byte[]数组。大家在网上一般都能收到下面类似的代码,这段代码是没有问题的。 但是我这边怎么试都无法成功,就是Blob数据插入不进来,其他字段都OK的。搞了好长时间都不行,后来想到更新MySql.Data.dll控件试试,上官网一看才发现已经更新到8.0.19了,而我用的还是几年前的5.0.6.0。更新完了之后发现多了好几个依赖dll,立马就OK了。 我还试了一下6.0.xx的版本(只有MySql.Data.dll一个文件的),也是不行,什么数据都更新不进去。

所以大家不要忘了更新MySql.Data.dll控件,现在最新的 v8.0.19 就可以插入Blob数据!

string sql = "insert into pimages_2(idata) values(@picture)";
byte[] IData = File.ReadAllBytes(@"C:\Documents\Pictures\pexels-photo-3597893.jpeg");
string para="@picture";
MySqlCommand cmd = new MySqlCommand(sql, conn);
cmd.Parameters.Clear();
MySqlParameter p = new MySqlParameter(para, MySqlDbType.Blob);
p.Value = Data;
cmd.Parameters.Add(p);
cmd.ExecuteNonQuery();
cmd.Dispose();
conn.Close();
conn.Dispose();

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值