当前位置:首页 > 日记 > 正文

varchar长度在MySQL的设置方法

varchar长度在MySQL的设置方法
如果其中一个项目是由varchar(50)
所以,当然,英语是50。
那么中国人呢
UTF-8的中文占3个字节
所以,这个varchar(50)只能保存16个汉字
MySQL varchar(50)是50人中英文
mysql5的文档,它描述了varchar字段类型:VARCHAR(米)长的字符串。M代表列的最大长度,m的范围是0到65535。(的varchar的最大实际长度的长排的大小和使用的字符集和,最大有效长度确定为65532个字节)。
它为什么会这样变化这感觉就像MySQL手册太不友好,因为你需要仔细阅读它,直到你找到这样的描述:MySQL 5.1遵循标准的SQL规范,不删除VARCHAR value.varchar尾部空间是一个字节或多个字节长前缀+数据保存。如果VARCHAR列的长度大于255、长度前缀是两字节。

嗯,它似乎明白了一点,但他使用2字节长度的前缀时,他说的长度大于255,和一次减法:65535-2 = 65533。我不知道这些奶牛计算,保持怀疑的时间
注:我已经测试了UTF8编码的使用,和varchar的最大长度是21854个字节。

在MySQL 5.0.45.版本测试,数据库编码UTF8:最长的VARCHAR类型被定义为21785。也就是说,无论是字母,数字,汉字只能放在21785。
想象一下:VARCHAR字节是最大65535,和UTF8编码的字符和3字节的65535 / 3 = 21785。

补充知识:

在1.varchar型变化
对MySQL数据库的varchar类型的最大长度小于4.1。数据库的版本的最大长度是255,和数据的范围可以是0 ~ 255或1 ~ 255(根据不同版本数据库)。在上述MySQL5.0版本,65535的varchar数据类型支持的长度,这意味着你可以存储65532字节的数据,开始和停止位占用3个字节,也就是说,在4.1或以下版本需要固定文本或BLOB格式存储的数据可以使用varchar变长存储的使用,这样可以有效地减小数据库文件的大小。
MySQL数据库varchar类型下的4.1版本,nvarchar(Unicode数据类型的字符存储)是一个字符或一个汉字,存储为2个字节,常用的中文或其他语言输入,这样不容易混淆;varchar:汉字是2个字节,存款和其他字符1字节,英文和数字输入varchar。
以下的4个版本,varchar(20),这是20个字节,如果存储UTF8汉字,只有6(3字节每个汉字);上述varchar版本5(20),指的是20个字,无论是存储数字、字母或UTF8汉字(每个汉字3字节)。可存储20条,最大大小为65532字节(20;varchar)在mysql4最大只有20字节,但根据mysql5编码,存储大小是不同的,下面的具体规则:
(a)存储限制
VARCHAR字段存储实际内容外聚集索引。内容的开头是1到2字节,表示实际长度(2字节长于255),因此最大长度不能超过65535。
B)代码长度限制
如果字符类型是GBK,每个字符占用2个字节最多和最大长度不能超过32766。
如果字符类型是UTF8,每个字符占用3个字节最多和最大长度不能超过21845。
如果以上超出限制在定义的时候,VARCHAR字段是强制转换为文本型,并产生警告。
线长度限制
在实际应用中的varchar长度限制是线的definition.mysql长度要求线不应超过65535定义的长度。如果桌子的长度超过此值,则提示
错误1118(42000):行大小太大。最大行大小为,例如,大小,65535。
2.char(M),VARCHAR(M)的差异
由char(m)定义的列的长度是固定的,m的值可以是0~255。当字符值保存,空间填充右侧达到指定的长度。当char值返回,在尾部空间删除。没有案例与转换存储或retrieval.char期间执行存储固定长度的数据非常方便,和char字段的索引效率水平高。例如,定义了char(10),然后是否将数据存储到10个字节中,您需要占用10字节空间,并自动填充空白空间。
定义VARCHAR列的长度(m)是可变长度的字符串,和M的值可以是0 ~ 65535。varchar的最大有效长度确定的最大行大小和使用的字符集。整体的最大长度是65532个字节。当VARCHAR值保存,只保存字符数,和另一个字节添加记录的长度(两个字节如果列声明更255。使用)VARCHAR值不充当它被保存。斯特恩空间仍然保留的值被保存和检索,并与标准SQL线。VARCHAR存储数据,但存储效率不焦高。如果一个字段的可能值是不固定长度,我们只知道,它不能超过10个字符,这是最经济的定义为varchar(10)。实际的VARCHAR类型的长度是其+ 1.why值的实际长度是1 这个字节是用来节省多少长度是实际使用。在空间上,它是适当使用varchar;在效率方面,关键是要根据字符的正确使用的实际情况找到平衡点。
CHAR和varchar的最大区别是一个是固定长度的,一个是可变长度的,因为它是可变长度的,实际上是存储实际的字符串,再加上一个字节记录长度的字符串。如果超过255,就需要两个字节。如果分配到CHAR或VARCHAR列的列的最大长度超过价值,价值是专做很合适。如果切的性格不是一个空间,一个警告会产生。如果一个非空字符切割,一个错误(而不是警告)的创建和使用严格的SQL模式禁用插入值。
3之间的区别。varchar和text和BLOB类型
VARCHAR,BLOB和文本类型是可变长度的类型,和他们的存储需求取决于列值的实际长度(在上表中L表示)而不是类型的最大尺寸。例如varchar(10)列可以保存10个字符的最大长度。实际的存储需要的字符串的长度,加上1的记录长度的字符串的字节,string'abcd ',我是4和5字节的存储要求。
Blob和文本类型需要1, 2, 3或4个字节来记录列值的长度,根据不同的type.varchar的最大可能长度需要定义大小,以65535字节的最大极限;文本不需要它。如果你指定一个值超过一列式二进制或文本列的最大长度,以适应它的价值被截断。
一个BLOB二进制大对象可以保存数据的变量的数目。4 BLOB类型,tinyblob,斑点,mediumblob,和LONGBLOB,差别只在最大长度可以节省。
BLOB存储图片,文字不能,文字只能存储纯文本文件。4 tinytext文本类型,文本,mediumtext,和单引号字符对应4 BLOB类型和具有相同的最大长度和存储要求。BLOB和文本类型之间的唯一区别是排序和比较在一个敏感的方式一滴价值,而文本值是区分大小写的。换句话说,一个文本是一个敏感的BLOB的案例。
4。之间的差异总结char、varchar、文本
0 ~ 255字符范围之间的长度差是varchar,长度是64K,但64K行的整个长度,考虑到其他列,如果不为空将占用一个,根据不同的字符集,有效长度是不一样的,如UTF8。高达21845,但其他栏目也删除,但是varchar一般足够的储存空间。如果你有大量的文本,可以考虑使用文字,而最高可以达到4g。
效率基本上是字符> varchar >文本,但如果InnoDB引擎的使用,建议使用varchar代替焦炭
CHAR和VARCHAR可以有默认值,和文本不能指定默认值
在数据库中选择合适的数据类型存储是必要的,它对性能有一定的影响。对于int类型,如果不需要访问负值,则应添加未签名。对于语句中经常出现的字段,考虑添加索引,整形尤其适用于索引。
以上是varchar长度的方法通过MySQL在Xiaobian推出了设置,希望能帮助你。如果你有任何问题,请给我留言,萧边会及时给您回复。谢谢您支持网站。

相关文章

Javascript判断数组是否有键的一个简单示

Javascript判断数组是否有键的一个简单示

数组,示例,简单,电脑软件,Javascript,js复合数组关联数组和对象是相同的,无论数组中是否存在一个键(或者这个对象是否包含一个属性),你不能使用未定义的元素,因为可能有一个键:未定义的};正确的方法应该是: ary.hasownproperty(重点);或obj.hasownpro…

excel表格中单元格数的快速统计

excel表格中单元格数的快速统计

统计,单元格,表格,快速,电脑软件,当我们使用excel来处理数据时,有时我们需要计算指定的范围单元格的数量,如果一个太难,实际上,我们可以通过简单地设置excel表中的指定范围单元格的数量来快速计算。 打开excel文件,然后右键单击Excel窗口下面的…

水墨画风格的PS图象处理软件墨竹图

水墨画风格的PS图象处理软件墨竹图

墨竹,水墨画,图象,处理软件,风格,PS图象处理软件的绘图功能很强大,有时多种风格可以通过简单的操作而产生的。在这篇文章中,我们介绍了如何使用渐变功能,过滤等功能画水墨竹。 最终效果 制作方法: 1,创建一个新的文档,创建一个新的层,使用椭圆选框…

如何保持高对比度的过滤器的皮肤

如何保持高对比度的过滤器的皮肤

过滤器,高对比度,电脑软件,你可能已经知道一个高对比度的滤镜可以用来锐化滤镜,但是你知道高对比度的滤镜也可以用来打磨皮肤吗 原图与效果图的比较 现在让我们看看它是如何工作的。 首先,复制背景层以创建一个新层。如果你有一个或一些其他…

代码折叠的Javascript实现

代码折叠的Javascript实现

折叠,代码,电脑软件,Javascript,首先,我们首先定义一个Javascript函数,如下所示: 功能puckermenu(水平){ 无功levellength =('row +水平长度); VaR做= '0'; 对于(VAR ICOUNT = 0;多 如果(文件。所有{多}。id.indexof('row +水平)> 1(文件。所有{多}。id.leng…

PPT布局最常见的七种布局

PPT布局最常见的七种布局

布局,最常见,七种,电脑软件,PPT,我们在过去完成的项目中对PPT布局的设计做了很好的总结,并与大家分享! 1标准型 最常见的简单的规则和布局类型,一般从上到下的顺序为:图片、图表、标题、说明文、图形符号,从上到下的心理秩序人们的认识和思维…

PS图象处理软件过滤器使迷人的雪景

PS图象处理软件过滤器使迷人的雪景

过滤器,雪景,图象,处理软件,迷人,先看最后效果比较。 步骤一:打开绘图文件并执行函数菜单选择颜色范围。首先,我们应该使用滴管吸收颜色的中间部分,然后调整模糊的比例。雾的大小将决定雪的范围。 第二步:使前景颜色变白,添加新图层,按Alt + del…

AI是一个户外广告架,带有金属材料。

AI是一个户外广告架,带有金属材料。

是一个,金属材料,户外广告,电脑软件,AI,今天,我想和大家分享一种用金属材料制作AI户外广告架的方法。这个教程很基础。很适合初学者学习和推荐。 步 首先给出参考样品。 打开AI软件到地图上,锁定。防止移动。 新建一层,画1条直线,轮廓不,然后是…

HTML5画布绘制五星级红旗

HTML5画布绘制五星级红旗

红旗,绘制,电脑软件,The Canvas drawing API is not defined on the element itself, but is defined in a ldquo obtained by the getContext () method of the canvas; the drawing environment ; the object. 画布API也使用路径表示。…

精益表格

精益表格

表格,精益,电脑软件,在我的工作中,一个Excel表格经常从不同的地方收集信息。但即使我用粘贴,我选择了选择性;最后,我会发现,原来只100kb约2MB的。我是受此困扰,有时不得不重建,甚至最后手动。,我们解决了这个问题,我们的经验与你分享。 打开一个Exc…

QQ提示文件损坏

QQ提示文件损坏

提示,损坏,文件,电脑软件,QQ,我的QQ有点乱。从右下角弹出一个提示框。文件损坏。它不能阅读。请使用chkdsk工具修复。这是怎么发生的QQ也可以正常使用,这很烦人。 有几个可能的原因,太多的垃圾,1坡的系统文件,主要是互联网垃圾文件。使用安全…

在打开窗口中放置公用文件夹

在打开窗口中放置公用文件夹

窗口中,电脑软件,打开WPS文字,单击切换到页面中的打开文件;卡;或单击工具栏上的图标,打开打开窗户,发现,例如:设置文件夹,F:文件夹,右键单击;文件;文件夹并选择快捷菜单添加到位置;我可以打开窗户,左;并添加一个文件;图标,在图标上点击快速打开文件夹后,文件;…