将值“001”添加到mysql数据库

问题描述 投票:2回答:5

我试图将值“006”添加到MySql行,但它显示为“6”!我的代码上的任何修复?

$id = "006";

mysql_query("INSERT INTO Table (id) VALUES ($id) ");

谢谢,

php mysql
5个回答
1
投票

如果id是一个数字列,如整数,0066相同,所以没有办法明确保存006,因为它与6完全相同。

但是如果你想要将这个整数检索为3位数,零填充字符串,你可以使用LPAD函数用左边的0填充它:

SELECT LPAD(id, 3, '0') as id FROM table;

1
投票

虽然这不是一种安全的方法:

$id = "006";

mysql_query("INSERT INTO Table (id) VALUES ('$id') ");

我想你忘记了一些关于值的引用,所以它的转换为int。


0
投票

您的字段必须是VARCHAR才能按您的意愿工作。当您运行查询时,您也可以填充前导零。


0
投票
  1. 我想这只是不正确的值(对于int字段类型)并且根本不能存储。
  2. 用于存储数据的数据库,意味着没有任何其他格式的数据,可以在选定的时间添加。这就是这个东西一般的运作方式。

所以,我建议存储一个常规的int,并在选择的时间用你想要的任意数量的零填充它


0
投票

尝试在mysql中使用查询。

ALTER TABLE table MODIFY COLUMN id INT(3) ZEROFILL;

这可以解决你的问题。

© www.soinside.com 2019 - 2024. All rights reserved.