我正在尝试将条目插入数据库:
mySqlCommand.CommandText = "INSERT INTO table_name (col1, col2) values (@number, @word);";
mySqlCommand.Parameters.Add("@number", MySqlDbType.Int32);
mySqlCommand.Parameters.Add("@word", MySqlDbType.VarChar);
mySqlCommand.Parameters["@number"].Value = 0110;
mySqlCommand.Parameters["@word"].Value = "Hello";
然而,当我退回时,它被存储为110
而不是0110
。如何让它识别领先的0
?
答案 0 :(得分:5)
你的数据类型是整数。当0110被转换为整数时,它变为110。
要实现您的目标,您需要在表和表中将其数据类型设置为varchar
MySqlDbType.Int32
到MySqlDbType.VarChar
。
希望这会对你有所帮助。
答案 1 :(得分:0)
没有像int中的前导0那样的东西。但是如果你想存储前导0,那么你可以将该字段的数据类型转换为Varchar ..
或通过编程方式,您也可以在任何变量中填充0,但它将再次转换为字符串。 喜欢这个
int Anynumber= 5;
string AnynumberWithZero = string.Format("{0}", Anynumber.ToString().PadLeft(2, '0'));
结果将是“05”