-2

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

我的代码:

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] + "";


   }

谢谢

4

2 回答 2

1

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

 var x = 0050;
 Console.Write(x);
 Console.Write(x.ToString("0000"));
于 2013-05-25T15:13:35.757 回答
0
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
于 2013-05-25T15:18:56.067 回答