tnblog
首页
视频
资源
登录
不帅~~但是很暖心.....
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2024TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
欢迎加群交流技术

数据库的varchar和nvarchar的区别

7056人阅读 2019/8/16 12:34 总访问:294859 评论:2 收藏:0 手机
分类: 数据库

搞了一个上午,自己测试看懂的一点点小东西,现在记录下来....



数据库的varchar和nvarchar的区别

首先内存上:1--8000  1--4000


中文以及韩文日文等一个字符为两个字节,英文以及数字等一个字符为一个字节


varchar内存的解析:是所输入的数据的实际长度(字节数)

例如:

create table UserInfo
(
userID int not null primary key identity(1,1),
userName varchar(5)
)
insert into UserInfo values('请问');--4个字节
insert into UserInfo values('请问e');--5个字节
insert into UserInfo values('wesdg');--5个字节


nvarchar:是varchar所输入的字节的两倍,相当于varchar(2)只能存‘我’,而nvarchar(2)可以存放‘我是’ 

意思就是把文字当作长度来处理,虚拟的直接把两个字节的字节变成一个字节计算

直接上代码

create table UserInfo
(
userID int not null primary key identity(1,1),
userName nvarchar(5)
)
insert into UserInfo values('请问撒旦个');--10个字节
insert into UserInfo values('abcde');--5个字节


所以为了节省空间一般如果是存放中文,建议使用nvarchar比较提高效率,给数据库减少内存空间


另外,char和nchar也是与上面的varchar和nvarchar一模一样,但是该类型不会收回剩余的空间,对于的内存空间会以空格字符串的形式填充

char:

nchar:


所以建议不是很多的字符串可以考虑用char,nchar,例如性别等。


评价