首页 MySql C#MySqlParameter问题

C#MySqlParameter问题

(int)faultsGroup是0或1但我总是得到这个错误:列FaultGroup不能为null有人告诉我为什么吗?语法看起来不错.MySqlCommand cmdAdd = new MySqlCommand(INSERT INTO Faults ( + FaultGroup, Text, Date, IP +

(int)faultsGroup是0或1但我总是得到这个错误:列’FaultGroup’不能为null

有人告诉我为什么吗?语法看起来不错.

MySqlCommand cmdAdd = new MySqlCommand("INSERT INTO Faults (" +
        "  FaultGroup,Text,Date,IP" +
        ") VALUES (" +
        "  @FaultGroup,@Text,@Date,@IP" +
        ")",conn);

MySqlParameter paramFaultGroup = new MySqlParameter("@FaultGroup",MySqlDbType.Int32);
FaultsGroup faultsGroup = (FaultsGroup) Enum.Parse(typeof (FaultsGroup),myFault.FaultGroup);
paramFaultGroup.Value = (int) faultsGroup;
cmdAdd.Parameters.Add(paramFaultGroup);

cmdAdd.ExecuteNonQuery();

最佳答案
我还没有使用MySql大约6个月(谢天谢地迁移到Sql Server)但是,尝试将@符号更改为?,就像内存服务一样,这是MySql的正确约定,所以:

MySqlCommand cmdAdd = new MySqlCommand(
       "INSERT INTO Faults (FaultGroup,IP)"
       + " VALUES (?FaultGroup,?Text,?Date,?IP)",conn);

MySqlParameter paramFaultGroup = new MySqlParameter("?FaultGroup",myFault.FaultGroup);
paramFaultGroup.Value = (int) faultsGroup;
cmdAdd.Parameters.Add(paramFaultGroup);

cmdAdd.ExecuteNonQuery();

本文来自网络,不代表青岛站长网立场。转载请注明出处: https://www.0532zz.com/html/shujuku/mysql/20200925/10504.html
上一篇
下一篇

作者: dawei

【声明】:青岛站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

返回顶部