求解这个更新数据库指令为什么不生效,也不报错?

@which 可能有问题,字段是动态的吗?最好通过if 语句控制

或者拼接成完整SQL语句

which在上一层里

 

 public void UpdateDelete()
        {
            int data;
            string which = "IsDeleted";
            LoginResult lr = this.IfValid();
            if (lr == LoginResult.ValidFF || lr == LoginResult.ValidFT)
            {
                data = 1;
            }
            else if(lr == LoginResult.ValidTF || lr == LoginResult.ValidTT)
            {
                data = 0;
            }
            else
            {
                data = 2;
            }
            OperatorServe op = new OperatorServe();
            op.UpdateOperator(which,userr,data);
        }
        public void UpdateLocked()
        {
            int data;
            string which = "IsLocked";
            LoginResult lr = this.IfValid();
            if (lr == LoginResult.ValidFF || lr == LoginResult.ValidTF)
            {
                data = 1;
            }
            else if (lr == LoginResult.ValidFT || lr == LoginResult.ValidTT)
            {
                data = 0;
            }
            else
            {
                data = 2;
            }
            OperatorServe op = new OperatorServe();
            op.UpdateOperator(which,userr,data);
        }

您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

土一点的方法就是在代码中语句执行那里打一个断点,得到程序向数据库发送的完整数据库语句,在把这个语句放数据库工具里执行一下,看看执行结果。另外,update语句如果判断条件不符合不一定会报错,而是返回“受影响的行为0”,这在数据库使用上算正确执行。