我有以下困惑 -
1.哪种数据类型用于更大量的数据存储
2.当我们指定varcha(100)时,这100表示100 characters
或100 bits or bytes
答案 0 :(得分:4)
在SQL Server上
varchar(100)= 100个ascii字符和102个字节
nvarchar(100)= 100个unicode / ascii字符和202个字节的存储空间
text和ntext最高可达2GB但不推荐使用(从sql server 2005开始),你应该使用varchar(max)和nvarchar(max),这两者都要高达2 GB而不是
答案 1 :(得分:2)
TEXT将存储高达64K - MySQL(例如)也提供变体:TINYTEXT(256字节),MEDIUMTEXT(16MB)和LONGTEXT(4GB)。
VARCHAR(100)列最多可容纳100个字符的文本。您可以将VARBINARY用于二进制数据,在这种情况下,VARBINARY(100)字段最多可容纳100个字节。
答案 2 :(得分:2)
如果使用MySQL
,差异主要与storage requirements:
VARCHAR
:L + 1
个字节,如果列值需要0 - 255个字节,L + 2
个字节,如果值可能需要超过255个字节
TEXT
:L + 2
字节,其中L < 2^16
其中L
是条目的实际大小
答案 3 :(得分:1)
假设您在谈论MS SQL Server:
1)varchar(max)
:varchar(max)
是TEXT
2)varchar(100)
= 100个字符(单字节ascii字符)
(而nvarchar(100)
= 100个字符(双字节unicode字符))
参考:char and varchar (Transact-SQL)
[刚发现可能重复:ms sql server; varchar(MAX) vs TEXT]
答案 4 :(得分:0)
数据类型TEXT限制为4000个字符,其中新数据类型Varchar(max)用于存储最大字符长度或指定的长度
有关详细信息,请查看