mysql 里面用什么数据类型来定义手机号码?

mysql 里面用什么数据类型来定义手机号码?,第1张

使用char(11),类型,因为手机号是固定的11位,所以可以直接使用char(11)

char用于C或C++中定义字符型变量,只占一个字节,取值范围为 -128 ~ +127(-2^7~2^7-1)。C语言中如int、long、short等不指定signed或unsigned时都默认为signed,但char在标准中不指定为signed或unsigned,编译器可以编译为带符号的,也可以编译为不带符号的。

扩展资料:

char类型占1字节,就是8位,所能存储的正整数是 0111 1111,即127。如果将 int 型的整数i= 128 赋予ch,会产生溢出。因128是 int 型,占 4 字节,二进制代码为 0000 0000 0000 0000 0000 0000 1000 0000.。若将它赋给一个只有8位的char 类型变量,只能将低8位的1000 0000 放进去,其他的都会被删掉。

整数在计算机中都是以补码的形式存储的,此时1000 0000 在计算机的眼里,是一个补码,最左边是 1 表示负数,补码1000 0000 所对应的十进制是 -128,所以最后输出的就是 -128。因此溢出会使得最大正整数变成最小负整数。

出生手机在mysql表示为SELECTFLOOR(DATEDIFF(CURDATE(),艾特birthday)或365点2422)取出生和当前日期之前的天数除以一年的实际天数(365天5小时48分46秒),然后取整。MySQL支持的数据类型有很多,而如何选择出正确的数据类型,对于性能是至关重要的。MySQL中所能存储的最小时间粒度为秒,常用的日期类型有DATETIME和TIMESTAMP。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6095318.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存