sql char varchar nvarchar 区别
来源:互联网 发布:淘宝标签怎么设置 编辑:程序博客网 时间:2024/05/01 04:12
1. char类型: 对英文(ASCII)字符占用1个字节,对一个汉字占用2个字节,CHAR存储定长数据很方便,CHAR字段上的索引效率极高,比如定义char(10),那么不论你存储的数据是否达 到了10个字节,都要占去10个字节的空间。因为是固定长度,所以速度效率高。比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间。因为是固定长度,所以速度效率高。
2. VARCHAR存储变长数据,如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的。VARCHAR类型的实际长度是它的值的实际长度+1。为什么“+1”呢?这一个字节用于保存实际使用了多大的长度。
Varchar类型:Varchar 的类型不以空格填满,而Char则会填充满为止,如varchar(100),但它的值只是"qian",所以它在数据库中存的值就是"qian",而char 不一样,如char(100),它的 值是"qian",而实际上它在数据库中是"qian "(qian后共有96个空格,就是把它填满为100个字节)。
注:由于char是以固定长度的,所以它的速度会比varchar快得多!但程序处理起来要麻烦一点,要用trim之类的函数把两边的空格去掉!
3. Nchar类型和Nvarchar类型是怎么一回事呢?为了与其他多种字符的转换,如中文,音标等,对每个英文(ASCII)字符都占用2个字节,对一个汉字也占用两个字节,所有的字符都占用2个字节。
varchar(n):变长型字符数据类型,存储最长长度为8,000 个字符
nvarchar(n):可变长度 Unicode 数据,其最大长度为 4,000 字符.字节的存储大小是所输入字符个数的两倍,就是说它是双字节来存储数据的。如果存储数据如果存在单字节时,它也是以双字节来占用存储空间的。
varchar一般适用于英文和数字,Nvarchar适用中文和其他字符,其中N表示Unicode常量,可以解决多语言字符集之间的转换问题
补充:如果我们的操作系统和数据库系统,都是英文版本的话,使用varchar()字段类型,存储含有中文的文字,那么都会编程如???这样的乱码信息。反之如果是中文版的话,就没这个问题。
- sql char varchar nvarchar 区别
- sql char varchar nvarchar区别
- SQL Char 、VarChar和NVarChar的区别
- 【SQL】nchar,char,varchar与nvarchar区别
- SQL Server nvarchar和varchar,char区别
- SQL中char、varchar、nvarchar的区别
- SQL中char、varchar、nvarchar的区别
- SQL中char、varchar、nvarchar的区别
- sql中char,varchar ,nvarchar 的区别
- SQL中char、varchar、nvarchar的区别
- SQL中char、varchar、nvarchar的区别
- SQL中char、varchar、nvarchar的区别
- SQL中char、varchar、nvarchar的区别
- SQL中char、varchar、nvarchar的区别
- SQL 中char,varchar,nvarchar的区别
- SQL中char、varchar、nvarchar的区别
- SQL中char、varchar、nvarchar的区别
- SQL中char、varchar、nvarchar的区别
- C++读取mat数据(2)【转帖】
- sql T_sql 利用Case When Then多条件判断SQL 语句
- 做最重要的事
- 针对某个特定表的操作日志记录
- 用Linux的iptables做代理服务器和防火墙配置
- sql char varchar nvarchar 区别
- poj1845 (数论+二分快速取模)
- sql T_sql 在存储过程中使用事务Trans 例子
- ABAP 调用本地程序打开文件
- 新闻集团正式对《泰晤士报》网络版收费
- python下发送邮件给多个收件人
- sql T_sql 利用NOW_NUMBER和CTE 去除表中重复记录行
- sql sql2008与vs2010的安装顺序
- 粉丝制作图标秀 - Opera+各国国旗