sql-server – sql server数据大小限制
这个问题与我的
SQL Data type size有关
varchar(max)似乎最多可以存储2GB. 我无法理解的是,在这个链接 sql row overflow MS说(我的重点):
我不明白这个说法. 解决方法为了说清楚,我们可以采取第一个非常基本的陈述:A table can contain a maximum of 8,060 bytes per row. 换句话说:每行必须适合一页(8 kB).如果可能的话,许多行可以放在一个页面中 – 但从不反过来. 二进制大对象(TEXT,NTEXT,BLOB)怎么样?这些列中的数据存储在特殊位置.该行只保存一个指向数据的指针,因此上面的基本语句仍然成立:表行必须适合一个页面. Binary large data is stored outside of the table. Each table row just holds a pointer in each BLOB field which actually points to the data. 有了这个说法,新的varchar(max)功能是特殊的,其行为如下: > varchar(n):存储在行中的常用文本字段,行数据必须适合一个页面. 请注意,大数据内容取决于表的所有其他列.此外,varchar(max)可以以压缩形式存储文本,使得超过8,060个字符可能适合一个数据页. 在我看来,语句这些列中的每一列的长度仍然必须在8,000字节的范围内似乎不准确,甚至可能是不正确的(varchar(max)列实际上可以容纳2 GB的数据,但不是存储在行中). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- SQLserver数据库生成数据字典,数据库字段说明
- SQLServer 2005 实现数据库同步备份 过程-结果-分析
- 是否有像SQL Server 2005的TRY / CATCH块这样的MySQL功能?
- 数据库设计 – 在数据库中,键和索引之间有什么区别?
- sql-server – 使用SQL Server从名为相同的XML节点获取所有
- sql-server-2008 – 链接服务器“(null)”的OLE DB提供程序
- sql – Oracle:不是一个有效的月份
- SQL的SUBSTR()函数使用介绍
- sqlserver2005 利用触发器 使得在对数据库操作时,自动触发
- sql – 检查存储在XML数据类型列中的集合中是否存在值