zoukankan      html  css  js  c++  java
  • [MySQL]varchar和char的的区别是什么

    在设计数据库的时候经常定义varchar字段 ,但是详细的区别还真不是特别清楚

    char的长度是不可变的,而varchar的长度是可变的。

    定义一个char[10]和varchar[10]。

    如果存进去的是‘tao’,那么char所占的长度依然为3,除了字符‘tao’外,后面跟7个空格,varchar就立马把长度变为3了,取数据的时候,char类型的要用trim()去掉多余的空格,而varchar是不需要的。

    char的存取速度还是要比varchar要快得多,因为其长度固定,方便程序的存储与查找。

    char也为此付出的是空间的代价,因为其长度固定,所以难免会有多余的空格占位符占据空间,可谓是以空间换取时间效率。

    varchar是以空间效率为首位。

    char的存储方式是:对英文字符(ASCII)占用1个字节,对一个汉字占用两个字节。
    varchar的存储方式是:对每个英文字符占用2个字节,汉字也占用2个字节。

    两者的存储数据都非unicode的字符数据。

    nchar和nvarchar是存储的unicode字符串数据

    开源作品

    GO-FLY,一套可私有化部署的免费开源客服系统,安装过程不超过五分钟(超过你打我 !),基于Golang开发,二进制文件可直接使用无需搭开发环境,下载zip解压即可,仅依赖MySQL数据库,是一个开箱即用的网页在线客服系统,致力于帮助广大开发者/中小站长快速整合私有客服功能
    github地址:go-fly
    官网地址:https://gofly.sopans.com

    赞赏作者

    微信交流

  • 相关阅读:
    shell脚本进阶
    sort与uniq命令
    sed命令
    DNS与CDN
    nginx
    Docker Private Registry
    docker存储卷
    docker容器网络配置
    docker容器网络
    docker容器虚拟化
  • 原文地址:https://www.cnblogs.com/taoshihan/p/14440407.html
Copyright © 2011-2022 走看看