andychen20121130
V2EX  ›  问与答

C# 操作 MYSQL 碰到一个奇怪的问题。

  •  
  •   andychen20121130 · May 24, 2017 · 1617 views
    This topic created in 3280 days ago, the information mentioned may be changed or developed.

    数据库中有一个字段是 int(11)整型,表示产品是否合格,合格表示 1,不合格表示 0. 查询语句如下。 String sql = "select device_test.device_id,device_set_value,device_offset_value,device_hw_value,device_fw_value,device_test_time,device_coder_result,device_power_result,device_test_result from device_test ,device_info where 1=1 and device_test.device_id = device_info.device_id"; MySqlCommand cmd = new MySqlCommand(); cmd.CommandText = sql; if (tb_test_result.Text.Equals("1") || tb_test_result.Text.Equals("合格") || tb_test_result.Text.ToUpper().Equals("OK")) { cmd.Parameters.Add(new MySqlParameter("@device_test_result", 1));

                }
                if (tb_test_result.Text.Equals("0") || tb_test_result.Text.Equals("不合格") || tb_test_result.Text.ToUpper().Equals("N"))
                {
                    cmd.Parameters.Add(new MySqlParameter("@device_test_result", 0));
    
                }
    

    当参数为 1 时可以正确查询到数据。当为 0 时就查不到了。 不知是什么原因。 不知道怎样可以放图片,排版有点乱。不好意思。

    4 replies    2017-05-24 10:29:17 +08:00
    Tuisku
        1
    Tuisku  
       May 24, 2017
    太乱不看,而且 0/1 不用 bit 用 int ?
    andychen20121130
        2
    andychen20121130  
    OP
       May 24, 2017
    @Tuisku 不会上传图片,用 bit 可行吗?
    andychen20121130
        3
    andychen20121130  
    OP
       May 24, 2017
    @Tuisku 数字 0 会转成 NULL 是什么原因?
    andychen20121130
        4
    andychen20121130  
    OP
       May 24, 2017
    @Tuisku 问题解决了,(object)0 转成对象,不然就当成字符处理了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3006 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 04:15 · PVG 12:15 · LAX 21:15 · JFK 00:15
    ♥ Do have faith in what you're doing.