-2

私はテーブルに数字を持っています。たとえば、0050。ZEROFILL を設定したため、データベースでは正確に 0050 です。しかし、C# でこの番号を SELECT したい場合、2 つの null なしで 50 しか表示されません。

私のコード:

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 に答える