nvarchar与varchar的区别

本文详细解释了数据库中字符类型的两种主要形式:varchar与nvarchar。重点对比了这两种类型在存储方式上的区别,强调了varchar更适合存储英文和数字,而nvarchar则适用于中文和其他语言文字,确保跨语系的一致性和正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

varchar[(n)]  
  长度为   n   个字节的可变长度且非   Unicode   的字符数据。n   必须是一个介于   1   和   8,000   之间的数值。存储大小为输入数据的字节的实际长度,而不是   n   个字节。所输入的数据字符长度可以为零。varchar   在   SQL-92   中的同义词为   char   varying   或   character   varying。  
   
  nvarchar(n)  
  包含   n   个字符的可变长度   Unicode   字符数据。n   的值必须介于   1   与   4,000   之间。字节的存储大小是所输入字符个数的两倍。所输入的数据字符长度可以为零。nvarchar   在   SQL-92   中的同义词为   national   char   varying   和   national   character   varying。 

//========================================================================

 

nvarchar   和   varchar   的区别是存储方式不同  
  varchar是按字节存储的.而带"n"的nvarchar是按字符存储的  
  比如说   varchar(40),能存储40个字节长度的字符,存储中文字符的时候,因为中文字符1个字符就等于2个字节.所以varchar(40)只能存储20个中文字符.  
  nvarchar(40),就可以存储40个中文字符,也就是说可以存储80个字节长度的字符.nvarchar要相对于存储的字符类型.比如有些字符是占3个字节的.  
  同样的,char和nchar也一样道理

 

//========================================================================

 

也就是说varchar适合输入英文和数字,nvarchar一般用作中文或其他语言的输入,这样到了别的语系就不会出现乱码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值