建表时,表大小超出页面2k大小,请问不改页面大小能建上这个表吗
我用的XP+SYBASE12.5,页面大小用的默认2k,现在建表时遇到问题,提示如下:错误信息:
Creating table 'AAA' failed because the minimum row size would be 3623 bytes. This exceeds the maximum allowable size of a row for this table, 1962 bytes.
请问,如果我不改变页面大小,能建上这个表吗 要先看看建表的sql了,一般会报错,但是表会建好,因为行不能跨页(text和image类型除外),所以行长度和页面大小有直接的关系 没用text和image类型的列,建表sql如下
Create Table TEST (
TEST_LSBH varchar(10) not null,
TEST_FLBH varchar(10) not null,
TEST_QJDH varchar(200) null,
TEST_QJLS varchar(100) null,
TEST_QJFL varchar(200) null,
TEST_GBDH varchar(200) not null,
TEST_GBLS varchar(100) not null,
TEST_CLBH varchar(200) null,
TEST_PS decimal(38,12)default 0 not null,
TEST_SL decimal(38,12)default 0 not null,
TEST_JSSL decimal(38,12)default 0 not null,
TEST_DJ decimal(38,12)default 0 not null,
TEST_JE decimal(38,12)default 0 not null,
TEST_JSJE decimal(38,12)default 0 not null,
TEST_KPSL decimal(38,12)default 0 not null,
TEST_C1A decimal(38,12)default 0 not null,
TEST_C1B decimal(38,12)default 0 not null,
TEST_C2A decimal(38,12)default 0 not null,
TEST_C2B decimal(38,12)default 0 not null,
TEST_C3A decimal(38,12)default 0 not null,
TEST_C3B decimal(38,12)default 0 not null,
TEST_C4A decimal(38,12)default 0 not null,
TEST_C4B decimal(38,12)default 0 not null,
TEST_C5A decimal(38,12)default 0 not null,
TEST_C5B decimal(38,12)default 0 not null,
TEST_C6A decimal(38,12)default 0 not null,
TEST_C6B decimal(38,12)default 0 not null,
TEST_C7A decimal(38,12)default 0 not null,
TEST_C7B decimal(38,12)default 0 not null,
TEST_C8A decimal(38,12)default 0 not null,
TEST_C8B decimal(38,12)default 0 not null,
TEST_C9A decimal(38,12)default 0 not null,
TEST_C9B decimal(38,12)default 0 not null,
TEST_C10A decimal(38,12)default 0 not null,
TEST_C10B decimal(38,12)default 0 not null,
TEST_C11A decimal(38,12)default 0 not null,
TEST_C11B decimal(38,12)default 0 not null,
TEST_C12A decimal(38,12)default 0 not null,
TEST_C12B decimal(38,12)default 0 not null,
TEST_C13A decimal(38,12)default 0 not null,
TEST_C13B decimal(38,12)default 0 not null,
TEST_C14A decimal(38,12)default 0 not null,
TEST_C14B decimal(38,12)default 0 not null,
TEST_C15A decimal(38,12)default 0 not null,
TEST_C15B decimal(38,12)default 0 not null,
TEST_C16A decimal(38,12)default 0 not null,
TEST_C16B decimal(38,12)default 0 not null,
TEST_C17A decimal(38,12)default 0 not null,
TEST_C17B decimal(38,12)default 0 not null,
TEST_C18A decimal(38,12)default 0 not null,
TEST_C18B decimal(38,12)default 0 not null,
TEST_C19A decimal(38,12)default 0 not null,
TEST_C19B decimal(38,12)default 0 not null,
TEST_C20A decimal(38,12)default 0 not null,
TEST_C20B decimal(38,12)default 0 not null,
TEST_C21A decimal(38,12)default 0 not null,
TEST_C21B decimal(38,12)default 0 not null,
TEST_C22A decimal(38,12)default 0 not null,
TEST_C22B decimal(38,12)default 0 not null,
TEST_C23A decimal(38,12)default 0 not null,
TEST_C23B decimal(38,12)default 0 not null,
TEST_C24A decimal(38,12)default 0 not null,
TEST_C24B decimal(38,12)default 0 not null,
TEST_C25A decimal(38,12)default 0 not null,
TEST_C25B decimal(38,12)default 0 not null,
TEST_C26A decimal(38,12)default 0 not null,
TEST_C26B decimal(38,12)default 0 not null,
TEST_C27A decimal(38,12)default 0 not null,
TEST_C27B decimal(38,12)default 0 not null,
TEST_C28A decimal(38,12)default 0 not null,
TEST_C28B decimal(38,12)default 0 not null,
TEST_C29A decimal(38,12)default 0 not null,
TEST_C29B decimal(38,12)default 0 not null,
TEST_C30A decimal(38,12)default 0 not null,
TEST_C30B decimal(38,12)default 0 not null,
TEST_C31A decimal(38,12)default 0 not null,
TEST_C31B decimal(38,12)default 0 not null,
TEST_C32A decimal(38,12)default 0 not null,
TEST_C32B decimal(38,12)default 0 not null,
TEST_C33A decimal(38,12)default 0 not null,
TEST_C33B decimal(38,12)default 0 not null,
TEST_C34A decimal(38,12)default 0 not null,
TEST_C34B decimal(38,12)default 0 not null,
TEST_C35A decimal(38,12)default 0 not null,
TEST_C35B decimal(38,12)default 0 not null,
TEST_C36A decimal(38,12)default 0 not null,
TEST_C36B decimal(38,12)default 0 not null,
TEST_C37A decimal(38,12)default 0 not null,
TEST_C37B decimal(38,12)default 0 not null,
TEST_C38A decimal(38,12)default 0 not null,
TEST_C38B decimal(38,12)default 0 not null,
TEST_C39A decimal(38,12)default 0 not null,
TEST_C39B decimal(38,12)default 0 not null,
TEST_C40A decimal(38,12)default 0 not null,
TEST_C40B decimal(38,12)default 0 not null,
TEST_C41A decimal(38,12)default 0 not null,
TEST_C41B decimal(38,12)default 0 not null,
TEST_C42A decimal(38,12)default 0 not null,
TEST_C42B decimal(38,12)default 0 not null,
TEST_C43A decimal(38,12)default 0 not null,
TEST_C43B decimal(38,12)default 0 not null,
TEST_C44A decimal(38,12)default 0 not null,
TEST_C44B decimal(38,12)default 0 not null,
TEST_C45A decimal(38,12)default 0 not null,
TEST_C45B decimal(38,12)default 0 not null,
TEST_C46A decimal(38,12)default 0 not null,
TEST_C46B decimal(38,12)default 0 not null,
TEST_C47A decimal(38,12)default 0 not null,
TEST_C47B decimal(38,12)default 0 not null,
TEST_C48A decimal(38,12)default 0 not null,
TEST_C48B decimal(38,12)default 0 not null,
TEST_C49A decimal(38,12)default 0 not null,
TEST_C49B decimal(38,12)default 0 not null,
TEST_C50A decimal(38,12)default 0 not null,
TEST_C50B decimal(38,12)default 0 not null,
TEST_C51A decimal(38,12)default 0 not null,
TEST_C51B decimal(38,12)default 0 not null,
TEST_C52A decimal(38,12)default 0 not null,
TEST_C52B decimal(38,12)default 0 not null,
TEST_C53A decimal(38,12)default 0 not null,
TEST_C53B decimal(38,12)default 0 not null,
TEST_C54A decimal(38,12)default 0 not null,
TEST_C54B decimal(38,12)default 0 not null,
TEST_C55A decimal(38,12)default 0 not null,
TEST_C55B decimal(38,12)default 0 not null,
TEST_C56A decimal(38,12)default 0 not null,
TEST_C56B decimal(38,12)default 0 not null,
TEST_C57A decimal(38,12)default 0 not null,
TEST_C57B decimal(38,12)default 0 not null,
TEST_C58A decimal(38,12)default 0 not null,
TEST_C58B decimal(38,12)default 0 not null,
TEST_C59A decimal(38,12)default 0 not null,
TEST_C59B decimal(38,12)default 0 not null,
TEST_C60A decimal(38,12)default 0 not null,
TEST_C60B decimal(38,12)default 0 not null,
TEST_C61A decimal(38,12)default 0 not null,
TEST_C61B decimal(38,12)default 0 not null,
TEST_C62A decimal(38,12)default 0 not null,
TEST_C62B decimal(38,12)default 0 not null,
TEST_C63A decimal(38,12)default 0 not null,
TEST_C63B decimal(38,12)default 0 not null,
TEST_C64A decimal(38,12)default 0 not null,
TEST_C64B decimal(38,12)default 0 not null,
TEST_C65A decimal(38,12)default 0 not null,
TEST_C65B decimal(38,12)default 0 not null,
TEST_C66A decimal(38,12)default 0 not null,
TEST_C66B decimal(38,12)default 0 not null,
TEST_C67A decimal(38,12)default 0 not null,
TEST_C67B decimal(38,12)default 0 not null,
TEST_C68A decimal(38,12)default 0 not null,
TEST_C68B decimal(38,12)default 0 not null,
TEST_C69A decimal(38,12)default 0 not null,
TEST_C69B decimal(38,12)default 0 not null,
TEST_C70A decimal(38,12)default 0 not null,
TEST_C70B decimal(38,12)default 0 not null,
TEST_C71A decimal(38,12)default 0 not null,
TEST_C71B decimal(38,12)default 0 not null,
TEST_C72A decimal(38,12)default 0 not null,
TEST_C72B decimal(38,12)default 0 not null,
TEST_C73A decimal(38,12)default 0 not null,
TEST_C73B decimal(38,12)default 0 not null,
TEST_C74A decimal(38,12)default 0 not null,
TEST_C74B decimal(38,12)default 0 not null,
TEST_C75A decimal(38,12)default 0 not null,
TEST_C75B decimal(38,12)default 0 not null,
TEST_C76A decimal(38,12)default 0 not null,
TEST_C76B decimal(38,12)default 0 not null,
TEST_C77A decimal(38,12)default 0 not null,
TEST_C77B decimal(38,12)default 0 not null,
TEST_C78A decimal(38,12)default 0 not null,
TEST_C78B decimal(38,12)default 0 not null,
TEST_C79A decimal(38,12)default 0 not null,
TEST_C79B decimal(38,12)default 0 not null,
TEST_C80A decimal(38,12)default 0 not null,
TEST_C80B decimal(38,12)default 0 not null,
TEST_C81A decimal(38,12)default 0 not null,
TEST_C81B decimal(38,12)default 0 not null,
TEST_C82A decimal(38,12)default 0 not null,
TEST_C82B decimal(38,12)default 0 not null,
TEST_C83A decimal(38,12)default 0 not null,
TEST_C83B decimal(38,12)default 0 not null,
TEST_C84A decimal(38,12)default 0 not null,
TEST_C84B decimal(38,12)default 0 not null,
TEST_C85A decimal(38,12)default 0 not null,
TEST_C85B decimal(38,12)default 0 not null,
TEST_C86A decimal(38,12)default 0 not null,
TEST_C86B decimal(38,12)default 0 not null,
TEST_C87A decimal(38,12)default 0 not null,
TEST_C87B decimal(38,12)default 0 not null,
TEST_C88A decimal(38,12)default 0 not null,
TEST_C88B decimal(38,12)default 0 not null,
TEST_C89A decimal(38,12)default 0 not null,
TEST_C89B decimal(38,12)default 0 not null,
TEST_C90A decimal(38,12)default 0 not null,
TEST_C90B decimal(38,12)default 0 not null,
TEST_C91A decimal(38,12)default 0 not null,
TEST_C91B decimal(38,12)default 0 not null,
TEST_C92A decimal(38,12)default 0 not null,
TEST_C92B decimal(38,12)default 0 not null,
TEST_C93A decimal(38,12)default 0 not null,
TEST_C93B decimal(38,12)default 0 not null,
TEST_C94A decimal(38,12)default 0 not null,
TEST_C94B decimal(38,12)default 0 not null,
TEST_C95A decimal(38,12)default 0 not null,
TEST_C95B decimal(38,12)default 0 not null,
TEST_C96A decimal(38,12)default 0 not null,
TEST_C96B decimal(38,12)default 0 not null,
TEST_C97A decimal(38,12)default 0 not null,
TEST_C97B decimal(38,12)default 0 not null,
TEST_C98A decimal(38,12)default 0 not null,
TEST_C98B decimal(38,12)default 0 not null,
TEST_C99A decimal(38,12)default 0 not null,
TEST_C99B decimal(38,12)default 0 not null,
TEST_C100A decimal(38,12)default 0 not null,
TEST_C100B decimal(38,12)default 0 not null,
TEST_C1 varchar(100) null,
TEST_C2 varchar(100) null,
TEST_C3 varchar(100) null,
TEST_C4 varchar(100) null,
TEST_C5 varchar(100) null,
TEST_C6 varchar(100) null,
TEST_C7 varchar(100) null,
TEST_C8 varchar(100) null,
TEST_C9 varchar(100) null,
TEST_C10 varchar(100) null,
TEST_U1 decimal(38,12) default 0 not null,
TEST_U2 decimal(38,12) default 0 not null,
TEST_U3 decimal(38,12) default 0 not null,
TEST_U4 decimal(38,12) default 0 not null,
TEST_U5 decimal(38,12) default 0 not null,
TEST_U6 decimal(38,12) default 0 not null
)
go 超过page size可以建,只是真实数据插入会导致问题。但从这个表结构看,很是感兴趣这个表为什么要这么设计 Creating table 'AAA' failed because the minimum row size would be 3623 bytes. This exceeds the maximum allowabl ...
不过根据这个报错里的“because the minimum row size would be 3623 bytes”,应该是建不起来了 因为最小的行都是3623bytes,比2k页面可用的1962要大
[ 本帖最后由 D_D_D_D 于 2009-3-10 09:18 编辑 ] 改页面大小吧。 原帖由 chenfeng825 于 2009-3-9 15:39 发表 http://bbs3.chinaunix.net/images/common/back.gif
超过page size可以建,只是真实数据插入会导致问题。但从这个表结构看,很是感兴趣这个表为什么要这么设计
我也没辙,设计人员说业务需要,必须用这么多列,我也搞不定了,重新建了4k的服务也不能用,就只好笨法子,卸载了数据库,重新装了一遍
请问这种情况下怎么能建上这个表,建表时能指定页面大小吗,不管设计了,先学点基础的数据库知识,请指教 sybase不像oracle那么灵活,可以指定不同的大小的“块”、“页面”
只能是建个服务,初始的时候就指定8k以上页面,不过16k有点太浪费空间了,正好我机器上有个8k页面的试验环境,建了一下,倒是没有任何报错。
其实可以把这张表拆成2个或3个,真的要查询的时候就从视图来....
回复 #8 cxt442 的帖子
Sorry,希望没有误导你!没看仔细,2K确实会不能成功,4K应该可以建立成功了而且应该还是小于你的表宽度。8K D_D_D_D已经测试完全没有问题。即使是8K可以完全插入一行,性能也不会高,几乎是一页一行了。
这个表如果不是某种非常特殊类型,例如工控设备等之类的话,实在看不出这样有什么好处。从范式角度看,甚至是零范式。
这种结构除非不打算进行计算或者某些计算都是极其稳定且很少类型的话,真的问题会很多。
页:
[1]
2