gpt4 book ai didi

c# - 错误-无法将类型 'System.Byte[]' 的对象强制转换为类型 'System.IConvertible'

转载 作者:行者123 更新时间:2023-11-29 23:48:05 25 4
gpt4 key购买 nike

我正在开发一个应用程序,用于使用 C# 在两个数据库之间传输数据。我有一个在MySQL中插入BLOB类型数据的方法。执行它时,我收到错误无法将类型为“System.Byte[]”的对象转换为类型为“System.IConvertible”。

代码#

public static void FiletoSql(MemoryStream fileToPut, MySqlConnection con)
{
try
{
const string preparedCommand =
@"update user_account_statement set STATEMENT_FILE=@ssfile, create_date_time=@udatetime where statement_Id=1070";
using (var sqlWrite = new MySqlCommand(preparedCommand, con))
{
sqlWrite.Parameters.AddWithValue("@ssfile", MySqlDbType.Blob).Value = fileToPut.ToArray();
sqlWrite.Parameters.AddWithValue("@udatetime", MySqlDbType.DateTime).Value =
DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");
sqlWrite.ExecuteNonQuery();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

我不明白转换过程中到底出了什么问题。

编辑:我已经尝试过:

var fileData=new MySqlParameter("@ssfile",MySqlDbType.Blob,data.Length) {
Value = data
};
sqlWrite.Parameters.Add(fileData);
sqlWrite.Parameters.AddWithValue("@udatetime", MySqlDbType.DateTime)
.Value = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");
var cmd = sqlWrite;
sqlWrite.ExecuteNonQuery();

现在我收到错误输入字符串的格式不正确。

最佳答案

哇!!得到答案了。

经过测试的解决方案:

public static void FiletoSql(MemoryStream fileToPut, MySqlConnection con)
{
byte[] data = fileToPut.ToArray();
try
{
const string preparedCommand =
@"update user_account_statement set STATEMENT_FILE=@ssfile, create_date_time=@udatetime where statement_Id=1070";

using (var sqlWrite = new MySqlCommand(preparedCommand, con))
{
sqlWrite.Parameters.Add("@ssfile", MySqlDbType.Blob);
sqlWrite.Parameters.Add("udatetime", MySqlDbType.DateTime);

sqlWrite.Parameters["@ssfile"].Value = data;
sqlWrite.Parameters["udatetime"].Value=DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");
sqlWrite.ExecuteNonQuery();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

关于c# - 错误-无法将类型 'System.Byte[]' 的对象强制转换为类型 'System.IConvertible',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25806889/

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