mysql数据库存储手机号字段选择bigint还是char?

这篇具有很好参考价值的文章主要介绍了mysql数据库存储手机号字段选择bigint还是char?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在MySQL中,存储手机号可以使用多种数据类型,包括bigint、char、varchar等。不同的数据类型有不同的优缺点,因此需要根据实际情况选择合适的数据类型。

bigint类型

bigint类型是一种整数类型,可以存储很大的整数,范围为-9223372036854775808到9223372036854775807。因此,如果使用bigint类型存储手机号,可以保证存储的手机号不会超出范围。

示例代码:

CREATE TABLE user ( id int(11) NOT NULL AUTO_INCREMENT, phone bigint(20) NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO user (id, phone) VALUES (1, 13800138000), (2, 13900139000), (3, 13600136000);

char类型

char类型是一种定长字符串类型,可以存储固定长度的字符串。如果使用char类型存储手机号,需要设置合适的长度,否则会浪费存储空间。另外,char类型的查询速度比较快,因为它是定长的。

示例代码:

CREATE TABLE user ( id int(11) NOT NULL AUTO_INCREMENT, phone char(11) NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO user (id, phone) VALUES (1,13800138000), (2,13900139000), (3,13600136000);

varchar类型

varchar类型是一种可变长度字符串类型,可以存储不定长度的字符串。如果使用varchar类型存储手机号,需要设置合适的长度,否则会浪费存储空间。另外,varchar类型的查询速度比较慢,因为它是可变长度的。

示例代码:

CREATE TABLE user ( id int(11) NOT NULL AUTO_INCREMENT, phone varchar(11) NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO user (id, phone) VALUES (1,13800138000), (2,13900139000), (3,13600136000);

综上所述,如果要存储手机号,可以选择bigint、char或者varchar类型。如果需要保证存储的手机号不会超出范围,可以选择bigint类型;如果需要查询速度比较快,可以选择char类型;如果需要存储不定长度的字符串,可以选择varchar类型。文章来源地址https://www.toymoban.com/news/detail-513586.html

到了这里,关于mysql数据库存储手机号字段选择bigint还是char?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端Vue手机号校验及后端Java手机号校验

    大家好! 今天给大家分享的知识是前端Vue手机号校验以及后端Java进行手机号校验,这两个也是我在开发过程中遇到的问题,现在来给大家分享一下我的解决办法。 在这里我写了一个很简单的小例子,大家可以参考一下,在此基础上进行改进,代码如下: 关键代码都有注释,

    2024年02月04日
    浏览(42)
  • 微信小程序:登录授权,根据手机号获取凭证,获取用户手机号

    1.微信小程序授权 controller 层代码 wxUtils 工具类 2.微信小程序,用户手机号获取 微信小程序,根据code(code为手机号获取凭证)获取用户加密手机号 获取用户手机号方法

    2024年02月14日
    浏览(65)
  • 微信小程序 - 实现手机号登录--授权并获取手机号保存至本地

    微信官方文档 | 获取手机号 这是服务端的  这是我们前端获取手机号需要给接口传递的两个参数    注意: 参数一: 获取access_token需要用到小程序密钥,这个需要从 服务端获取 ,也就是需要请求后端接口获取access_token,千万不要将小程序密钥写在前端代码中, 必须 要从服

    2024年02月03日
    浏览(60)
  • 微信小程序手机号授权获取收费(手机号快速验证组件)剩余次数查看购买

    登录微信公众平台 ,在管理---》付费管理下查看,已用次数和剩余次数 该能力旨在帮助开发者向用户发起手机号申请,并且 必须经过用户同意后 ,开发者才可获得由平台验证后的手机号,进而为用户提供相应服务。 该能力与手机号实时验证组件的区别为: 手机号快速验证

    2024年02月22日
    浏览(77)
  • 【小程序】获取手机号报错:getPhoneNumber:fail no permission 【getPhoneNumber无法获取手机号】

    login.wxml  login.js 操作后控制台提示no permission   为保证用户隐私数据安全,调用getPhoneNumber方法,需要进行微信认证 (1)微信认证 需要企业账号,并付费300元 可参考:getPhoneNumber:fail no permission_在他乡奋斗的博客-CSDN博客 (2)开启微信测试号 方便我们在决定正式注册小程序

    2024年02月09日
    浏览(36)
  • java—手机号脱敏

    Java中手机号脱敏是指将真实手机号码中的一部分数字用特定字符替换,以保护用户的个人信息。通常,手机号码脱敏会将手机号的中间几位或者最后几位替换成特定字符,例如用“*”、\\\"X\\\"或者其他随意选择的字符来代替。 手机号脱敏的目的是防止用户个人信息外泄。在互联

    2024年02月11日
    浏览(42)
  • 【手机号验证/前端】Vue2+elementUI编写一个手机号验证码登录页面,路由式开发(附完整代码)

    目录 效果图: 一、template部分 二、style样式 三、script部分 1.先对手机号的格式进行一个判断 2.接下来就是表单验证规则rules 3.最后就是methods了 (1)首先我们给获取验证码绑定一个方法 (2)然后封装一个axios接口,方便后面测试联调(这部分每个人封装的都不一样) (3)然

    2024年02月17日
    浏览(55)
  • 小程序获取用户手机号

    通过获取用户手机号,可以省去很多操作,是比较常见的功能。 获取用户手机号码 分为以下几步: 第一点击页面获取授权按钮 第二获取用户授权参数 第三根据加解密算法解密手机号码 需要将 button 组件 open-type 的值设置为 getPhoneNumber,当用户点击并同意之后,可以通过 b

    2024年02月11日
    浏览(45)
  • 手机号一键授权登录页面

        源码地址:https://ext.dcloud.net.cn/plugin?id=12272

    2024年02月03日
    浏览(52)
  • UNIAPP手机号一键登录

    使用uniapp实现移动端手机号一键登录功能。 uni一键登录 是DCloud联合个推公司推出的,整合了三大运营商网关认证能力的服务。 通过运营商的底层SDK,实现App端无需短信验证码直接获取手机号,也就是很多主流App都提供的一键登录功能 首先需要登录DCloud开发者中心,申请开通

    2023年04月22日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包