我有一个MySQL列"phone“,当数据来自我的php表单时,如果开头有一个零,它就会消失在表中,例如:"06719823”变成"6719823“
我首先认为它是php中的一个问题,因为我使用的是mysql_real_escape_string(),但是后来我尝试直接修改phpmyadmin上的SQL字段,并且我不能添加前0,它总是删除它。
Colonne Type Interclassement Attributs Null Défaut Extra
phone int(10) Oui NULL 怎么了?我应该分配一个"interclassement“utf8_general_ci吗?
发布于 2012-05-11 12:13:00
将您的列类型更改为char(10),以获取10位电话号码。
发布于 2012-05-11 12:16:52
如果列类型为int (整数),则将在内部将数字表示为整数,这意味着"first 0“不会被存储,因为它们对整数没有任何意义。
由于您实际上试图存储的内容具有的含义,即字符序列,而不是数量,因此将其存储为char(n)、n位数字序列或大小变化很大的序列的varchar会更有意义。
发布于 2012-05-11 12:13:38
将您的电话属性设置为Varchar或Text,以避免出现这种情况。
电话号码有时也可以包含括号和连字符,此外,你也可以避免你的问题。
https://stackoverflow.com/questions/10551083
复制相似问题