MySQL保存URL用什么类型合适

最近在做微信的公众号开发,一些表需要保存URL信息,建表的时候我在犹豫,到底是TEXT还是VARCHAR,如果是VARCHAR长度又是多少?
miaomiaomiao.jpg

References:

看了下StackOverflow上这个问题的最高票,感觉分析的很在理,搬过来翻译下,嘻嘻。

  1. 首先,在主流浏览器中,限制的URL长度最小值是IE,为2083,见参考链接文章。
  2. 然后,MySQL中VARCHAR列中的值是可变长度的字符串。在5.0.3之前,可以指定长度从0到255,但是从5.0.3开始,长度为0到65535。MySQL 5.0.3及更高版本中VARCHAR的有效最大长度受最大行大小(65,535字节,在所有列之间共享)和使用的字符集的限制。
    (注:原链接已经失效了,给个最新的吧,但是内容有些不一样。https://dev.mysql.com/doc/refman/8.0/en/char.html
  3. 所以...
    < MySQL 5.0.3 用 TEXT
    或者
    \>= MySQL 5.0.3 用 VARCHAR(2083)

个人觉得这样确实是没问题的,毕竟短链这么流行的今天,大厂基本都用了短链。当然如果2083真的不够用,VARCHAR(65535)走起,还不够?TEXT...额,我觉得需要考虑下这个链接真的正常吗?

标签: none

添加新评论

ali-01.gifali-58.gifali-09.gifali-23.gifali-04.gifali-46.gifali-57.gifali-22.gifali-38.gifali-13.gifali-10.gifali-34.gifali-06.gifali-37.gifali-42.gifali-35.gifali-12.gifali-30.gifali-16.gifali-54.gifali-55.gifali-59.gif

加载中……