zoukankan      html  css  js  c++  java
  • mysqlvarchar、text 类型到底能存储多大字符?

    前提:一个中文字符大概占用 3个字节,一个英文或者数字字符占用 1 个字节,length() 函数查看的是字节数,char_length() 查看的是字符数

    varchar 默认存储的是字符

    varchar 存储的是字符,长度是创建数据库中定义好的,例如下面的 name1 可以存储 11 个字符,无论是中文还是英文

    例如:

    create table test
    (
        id    int(20)     not null
            primary key,
        age   int         null,
        name  json        null,
        name1 varchar(11) null
    );
    

    text 默认存储的是字节

    和 varchar 不同,text 存储的是字节,最大 65535 字节,需要使用 length() 函数来看,所以,text 里面如果有中文的话,字符数是不等于字节数的,比如你在代码中判断字符长度没有超过 65535,但是去插入数据库时,可能会报 | [2021-12-08 16:08:21] [22001][1406] Data truncation: Data too long for column 'name1' at row 1

    人的潜力是可以激发的,比如说你给我50斤的砖我可能拎不动,但你要是给我100斤的人民币我肯定拎起来就跑。
  • 相关阅读:
    efibootmgr命令
    GPT+UEFI双系统引导
    关于元类的一些使用心得
    队列的数组实现
    队列的链表实现
    栈的链表实现
    栈的数组实现
    单链表实现基数排序
    多项式ADT加法乘法——单链表实现
    LeetCode: 476 Number Complement(easy)
  • 原文地址:https://www.cnblogs.com/mojiruo/p/15662141.html
Copyright © 2011-2022 走看看