站保站

服务市场
  • 网站市场
  • 单机游戏
  • 平台大厅
  • 转让市场
  • 发卡市场
  • 广告市场
  • 下载市场
  • 收录市场
  • 本站平台
    平台客服
    微信Q群



    平台微博/weibo    平台微信/公众号    平台抖音/快手   
    曝光台    保障    地图   
    上传资源 快速赚钱
    站保站    登录      |  注册  |  

    只需一步,快速开始!

     找回密码   |   协议
    热门搜索: 网站开发 App报毒 挖矿源码 代办资质

    MySql实际应用:主键与外键

    • 时间:2020-10-26 11:20 编辑:bupt_01 来源: 阅读:69
    • 扫一扫,手机访问
    摘要:

    MySql实际应用中的主键与外键

    一、使用int/bigint类型的主键

    对于数据库中字段类型的设计,一般小型数据库中id的类型是int/bigint(bigint相当于java中的long)对于其他的字段使用char或者varchar。在主键使用int/bigint的好处是可以自增,与此同时,这个功能也是他的缺陷。因为自增的话,插入数据时候,数据库会在已经存在的数据库中查询找到id的最大值,然后在此基础上+1。由于一般id最大值不是数据总量,因此需要挨个比出来最大值,在数据库数据很多的情况下,会减小数据库的效率。

    二、UUID

    在实际情况下,我们一般使用字符串类型的主键。主键的特性:非空+唯一,我们需要解决的是唯一问题。
    使用UUID会为我们生成一组由数字字母下划线及横杆组成的随机串,这个随机串有36位,这个随机串是全世界唯一的,使用代码如下:

    // A code block
    UUID uuid=UUID.randomUUID();
    String str=uuid.toString();
    
    • 1
    • 2
    • 3

    为什么UUID是全世界唯一?
    UUID的组成:随机数+时间+硬件自身出厂的机器编码。
    总结:使用UUID的话,主键的类型选为char(32)

    三、外键

    在一般情况下,项目中我们一般不使用外键关联,只是约定好表和表之间的联系。因为如果使用外键,在进行数据库操作时候就是多张表一起操作,会降低他的效率。

    • 全部评论(0)
    • 最新

    信息加载中,请等待

    微信客服(速回)

    微信客服(慢回)



    企业微信客服二维码
    联系我们
    平台客服: 平台QQ客服

    平台电话:400电话迁移中!

    平台邮箱:28292383@qq.com

    工作时间:周一至周五:早10:00 晚:18:00

    营业执照     网站ICP备案:鲁ICP备20027607号-1     鲁公网安备:37068702000078号     增值电信业务经营许可证、在线数据与交易处理业务许可证:鲁B2-20200681      © 2016-2024 站保站  https://www.zhanbaozhan.com/ 版权所有!      平台规范:   关于我们   广告合作   隐私条款   免责声明   法律声明   服务条款   网站地图   平台工单!