我有SQL 2008 R2数据库。我创建了一个表,当试图执行select语句(使用order by子句)时,我收到错误“无法创建大于最大允许行大小8060的行8870”。SQL 2008 R2超出行大小限制
我可以选择数据而无需order by子句,但order by子句很重要,我需要它。我已经尝试了一个强大的计划选项,但我仍然收到相同的错误。
我的表格有300多列,数据类型为TEXT。我曾尝试使用varchar和nvarchar,但没有成功。
有人可以提供一些见解吗?
更新:
感谢征求意见。我同意。一张桌子中的300多列不是很好的设计。我想要做的是将excel制表符作为数据表引入数据库。一些标签有300多列。
我首先使用CREATE语句来创建基于excel选项卡的表,以便各列不同。然后,在用数据创建表之后,我在表上执行各种SELECT,UPDATE,INSERT等语句。
表的结构通常遵循这一行话: fkVersionID,ROWNUMBER(自动编号),字段1,字段2,字段3,等等
有没有什么办法让周围的8060行大小限制?
300多列TEXT类型的列?真?听起来像那个数据库可以使用一些规范化。 – 2011-04-11 22:58:09
你可以显示你的表格布局吗? – 2011-04-11 23:12:52
“数据类型为TEXT的300多列”。只是一个非常糟糕的设计。 TEXT不代表文字。任何桌子超过约。 100多列是可能的分裂候选者。 – 2011-04-12 00:29:09