C# MySQL SELECT with null

本文关键字:null with SELECT MySQL | 更新日期: 2023-09-27 18:15:33

我在表中有数字。例如0050。在数据库中恰好是0050,因为我设置了ZEROFILL。但是现在当我想在c#中选择这个数字时,它只显示50,没有2个null。

我代码:

private void button4_Click(object sender, EventArgs e)
   {
       string input = label1.Text.Trim();
       string conn = "server=46.28.110.147;user=asqasdqdq;password=qdqdqd;database=qdqdqwdqd;";
       MySqlConnection myconn = new MySqlConnection(conn);
       string sql = "SELECT numbers FROM vfr WHERE used=0 ORDER BY numbers LIMIT 1";
       MySqlDataAdapter da = new MySqlDataAdapter(sql, myconn);
       DataTable dt = new DataTable();
       da.Fill(dt);
       label1.Text = dt.Rows[0][0] + "";

   }

谢谢

C# MySQL SELECT with null

因为无论ZEROFILL表示什么数字,作为数字存储都不包含格式化信息。如果您将数字存储为字符串,那么可能,但是如果您将其转换为数字,当您将其带入c#时,您仍然会遇到完全相同的问题。数字在c#中也不包含格式信息。控制格式是一个单独的过程。查看.NetFormatStrings

 var x = 0050;
 Console.Write(x);
 Console.Write(x.ToString("0000"));
select * from table where numbers is null
select * from table where numbers is not null

update table set numbers =1 where numbers is null
update table set numbers =1 where numbers is not null