我需要将电话号码存储在一张桌子里.请建议我应该使用哪种数据类型? 等待.请在回复之前阅读..
由于销售代表可以使用此字段进行搜索(包括野生字符搜索),因此需要对此字段进行大量索引.
截至目前,我们期望电话号码有多种格式(来自XML文件).我是否必须编写解析器才能转换为统一格式?可能有数百万个数据(有重复数据),每次有些源数据通过时我都不想占用服务器资源(在预处理过多等活动中).
欢迎任何建议..
更新:我无法控制源数据.只是xml文件的结构是标准的.想要将xml解析保持在最低限度.一旦它在数据库中,检索应该很快.这里有一个疯狂的建议是它甚至应该使用Ajax AutoComplete功能(因此Sales Reps可以立即看到匹配的功能).我的天啊!!
我进入phpMyAdmin并将整数(15)字段的值更改为10位数字,所以一切都应该正常工作.我输入值'4085628851',我收到以下错误:
警告:#1264超出范围值,已针对第1行的"电话"列进行了调整
然后它将值更改为'2147483647'.
经过一些谷歌搜索,我发现这篇文章解释了如何解决问题.http://webomania.wordpress.com/2006/10/01/out-of-range-value-adjusted-for-column-error/,但我不知道如何登录Mysql shell.
我如何登录Mysql shell?我该如何解决这个错误?
我收到此错误:
错误 1264 (22003):第 1 行的“median_comments”列的值超出范围
运行此查询后:
update influencers set `median_comments` = 1347 WHERE `id` = 1;
Run Code Online (Sandbox Code Playgroud)
我不知道为什么在这个没有任何小数且只有 4 位数字的数字上失败。
字段类型为:
median_comments decimal(10,8)
Run Code Online (Sandbox Code Playgroud) 当我尝试将下面插入我的MySQL时
INSERT INTO `rooms` (`id`, `ip`) VALUES ('131213', '-259857341');
Run Code Online (Sandbox Code Playgroud)
我失败了以下错误:
Warning: #1264 Out of range value for column 'ip' at row 1
Run Code Online (Sandbox Code Playgroud)
我环顾四周,但还没有找到如何解决或解决它...
我的字段是unsigned int,它应该适用于该条目.
有什么问题,如何解决?
我使用unsigned int因为我想使用inet_ntoa/aton存储ips.
编辑:
我在MySQL网站上使用unsigned INT作为推荐:
要存储由INET_ATON()生成的值,请使用INT UNSIGNED列而不是INT(已签名).如果使用带符号列,则无法正确存储与第一个八位字节大于127的IP地址对应的值.请参见第10.6节"超出范围和溢出处理".
http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html