zoukankan      html  css  js  c++  java
  • 知识点:SQL中char、varchar、text区别

    Char为定长,varchar,text为变长、

    • 1、CHAR。CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间。

    • 2、VARCHAR。存储变长数据,但存储效率没有CHAR高。如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的。VARCHAR类型的实际长度是它的值的实际长度+1。为什么“+1”呢?这一个字节用于保存实际使用了多大的长度。

    从空间上考虑,用varchar合适;从效率上考虑,用char合适,关键是根据实际情况找到权衡点。

    • 3、TEXT。text存储可变长度的非Unicode数据,最大长度为2^31-1(2,147,483,647)个字符。

    注意

    Char,Varchar不像数值类型,有系统默认长度,所以必须在括号里定义长度,可以有默认值

    text不可以写默认值,后面如果指定长度,不会报错误,但是这个长度是不起作用的,意思就是你插入数据的时候,超过你指定的长度还是可以正常插入(严格模式下没有测试)

    总结:char会造成空间浪费,但是有速度优势;而varchar节省了空间,但是速度就不如char。

    (1)经常变化的字段用varchar
    
     (2)知道固定长度的用char
    
     (3)尽量用varchar
    
     (4)超过255字节的只能用varchar或者text
    
     (5)能用varchar的地方不用text
  • 相关阅读:
    (转)基于C#的socket编程的TCP异步实现
    socket
    (转)抽象类、抽象属性、抽象方法
    (转)c# 互斥锁
    (转)C#连接OleDBConnection数据库的操作
    c# DLL封装并调用
    网络cmd命令
    (转)UCOSII在任务切换与出入中断时堆栈指针的使用
    app和bootloader跳转 MSP与PSP
    (转)stm32启动文件详解
  • 原文地址:https://www.cnblogs.com/yizhiamumu/p/9135002.html
Copyright © 2011-2022 走看看