我正在尝试将值“006”添加到MySql行,但它显示为“6”!对我的代码有什么修正?
$id = "006";
mysql_query("INSERT INTO Table (id) VALUES ($id) ");
谢谢,
答案 0 :(得分:1)
如果id
是一个数字列,例如整数,006
与6
相同,那么就没有办法明确保存006
与6
相同。
但是如果要将该整数检索为3位数,零填充字符串,则可以使用LPAD
函数将其填充到左侧的0
:
SELECT LPAD(id, 3, '0') as id FROM table;
答案 1 :(得分:1)
虽然这不是一种安全的方式:
$id = "006";
mysql_query("INSERT INTO Table (id) VALUES ('$id') ");
我认为你忘记了一些关于值的引用,所以它的转换为int。
答案 2 :(得分:0)
您的字段必须是VARCHAR才能按您的意愿工作。当您运行查询时,也可以填充前导零。
答案 3 :(得分:0)
所以,我建议存储一个常规的int,并在选择的时间用你想要的任意数量的零填充它
答案 4 :(得分:0)
尝试在mysql中使用查询。
ALTER TABLE table MODIFY COLUMN id INT(3) ZEROFILL;
这可以解决你的问题。