我研究了这个问题,但没有得到切实的解决方案。为您提供信息,我使用我们的通用库类连接,从来没有遇到过这样的问题。而且我还想说,该项目成功地运行在我的本地PC上,但不是在服务器上。
这是我得到一个错误的代码片段:
queue_tablename = tablename;
conn = myconn;
writecomm = conn.CreateCommand();
writecomm.CommandText = "insert into "+tablename+" (id,mtype,channel,dt,fromnumber,tonumber,smstext)" +
"values (?id,?mtype,?channel,?dt,?fromnumber,?tonumber,?smstext)";
writecomm.Parameters.Add(new MySqlParameter("id", MySqlDbType.Int64));
writecomm.Parameters.Add(new MySqlParameter("mtype", MySqlDbType.VarChar));
writecomm.Parameters.Add(new MySqlParameter("channel", MySqlDbType.VarChar));
writecomm.Parameters.Add(new MySqlParameter("dt", MySqlDbType.DateTime));
writecomm.Parameters.Add(new MySqlParameter("fromnumber", MySqlDbType.VarChar));
writecomm.Parameters.Add(new MySqlParameter("tonumber", MySqlDbType.VarChar));
writecomm.Parameters.Add(new MySqlParameter("smstext", MySqlDbType.VarChar));
这一行抛出异常:
writecomm.Parameters.Add(new MySqlParameter("id", MySqlDbType.Int64));
MySql.Data.dll中发生类型为"MySql. Data. MySqlClient. MySqlException"的未处理异常
补充信息:只能存储MySqlParameter对象
3条答案
按热度按时间6jygbczu1#
我解决了这个问题,希望它能帮助谁尝试了上述解决方案的提示,但无法解决。
发生异常是因为我的连接库使用MySql.Data.dll版本6.2.2.2,但我添加了6.9.9.0的引用。更改MySql.Data引用,这将对您有所帮助。
在我的情况下,我的公司有另一个连接库,它与6.9.9.0版本一起工作。这就是为什么,我使用了新的连接库,一切正常。
mcvgt66p2#
试试这个
像这样添加参数,
或
zpf6vheq3#
只是添加此错误的另一个可能的解决方案:完全限定MySqlParameter的名称,如下所示:
new MySql.Data.MySqlClient.MySqlParameter(name, value)
.在我的一个项目中,
MySqlConnector
和MySql.Data.MySqlClient
都被引用,在没有完全限定的情况下,它使用了前者,这导致了一个造型错误和随后的db调用中的异常。