char varchar nchar nvarcharar到底有多大区别
首先说明下,ASP.NET MVC系列还在龟速翻译中。
工作好多年,基础知识甚是薄弱,决定以后在coding(cv操作)的时候尽量多google下,然后总结下来,目的有三:
1. 加深自己的理解,如果园看懂了并且没有误导人,那么我就理解对了。
2. 以备自己遇到问题之后还要google,直接看看自己的就好了。
3. 也许面试前的突击能用到,不用东找西看
下面言归正传,介绍下char、varchar、nchar、nvarcharar到底有什么区别,免得每次创建新表的时候,总是在模仿别人的,自己的主见呢?
Q:这个列为什么使用这类型,长度为什么是这么长?
A:某某创建的表的类似的列就是这样的定义的。(好惭愧、-_- !)
Nchar 和 nvarchar 存储Unicode字符
char 和 varchar 不能存储Unicode字符。
char 和 nchar是固定长度,当存储的字符长度小于定义的长度,剩余长度的空间用空格补足。
varchar 和 nvarchar是可变长度,可以理解为在定义长度的范围内,按需存储,剩余长度的空间不会用空格填充。
例如,将长度设置为10,分别存储boyce
char(10)存储结果:’boyce ‘
varchar(10) 存储结果:’boyce’
最后还是以表格的形式总结下:
数据类型 |
定义 |
存储数据 |
长度 |
存储是否固定 |
使用建议(仅供参考) |
char |
character |
非Unicode |
[1,8000] |
是 |
列数据的大小基本一致 |
nchar |
national char |
Unicode |
[1,4000] |
否 |
列数据的大小基本一致 |
varchar |
char varying |
非Unicode |
[(1,8000)|max] |
是 |
列数据的大小相差很大可能会超过8000 个字节时使用max |
nvarchar |
National char varying |
Unicode |
[(1,4000)|max] |
否 |
列数据的大小相差很大可能会超过4000 个字节时使用max |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述