Dyl*_*SUN 48 mysql types phone-number street-address
我想在表格中输入电话号码,包括国家代码,分机号码
create table if not exists employee( `
country_code_tel int(11),
tel_number int(10),
extension int(10),
mobile bigint(20)
);
Run Code Online (Sandbox Code Playgroud)
如果tel_number大于15位,我可以使用哪种数据类型,我最好使用Bigint(20)
?
create table address(
address varchar(255),
city varchar(255),
country varchar(255),
post_code int(11)
);
Run Code Online (Sandbox Code Playgroud)
例如,如果我有加拿大的国家代码,我可以使用+2或002.哪种处理更好?
谢谢你的建议.
o.k*_*k.w 66
好吧,我个人不使用数值数据类型来存储电话号码或相关信息.
你怎么存储一个数字说001234567?它最终会以1234567结束,失去领先的零.
当然,你总是可以把它填上,但是这可以让你确切地知道这个数字应该是多少位数.
这不能回答你的整个帖子,
只是我的2美分
Vin*_*nie 47
实际上你可以使用varchar作为电话号码.您不需要int,因为您不会对数字执行算术运算.
Dan*_*lly 31
并将其作为两个字段的电话号码-一个"数字"和"面具"的TinyText
类型不需要超过255项.
在我们存储文件之前,我们解析电话号码以获取已使用的格式并创建掩码,然后我们仅将数字存储为数字,例如
输入: (0123) 456 7890
数字:01234567890
面具: (nnnn)_nnn_nnnn
从理论上讲,这允许我们在Number字段上执行比较搜索,例如获取以特定区号开头的所有电话号码,而不必担心用户输入的是什么
小智 24
我通常将电话号码存储为E164格式的BIGINT.
E164永远不会以0开头,前几位是国家代码.
+441234567890
+44 (0)1234 567890
01234 567890
Run Code Online (Sandbox Code Playgroud)
等等将被存储为441234567890
.
归档时间: |
|
查看次数: |
155861 次 |
最近记录: |