公告:九九网站目录为广大站长提供免费收录网站服务,会员可在线完成投稿无需添加友情链接。只收录内容正规合法的网站;快审网站软文10元

点击这里在线咨询客服
新站提交
  • 网站:8452
  • 待审:21
  • 小程序:9
  • 文章:3601
  • 会员:2183

 

代码数据库在插入数据的时候有可能会遇到报错:-2665记录超长。该错误原因主要是因为在达梦数据库中数据记录的长度不能超过也大小的一半。DM数据库专栏

达梦数据库在初始化实例的时候,默认的页大小是 8 KB,也就是说一个表一条记录的所有的字段的总长度不能超过也大小的一半,也就是 4 KB。所以页大小影响后面表每行数据的长度,表每行的长度之和(普通数据类型)不能超过一页大小,如果超过 1 页大小即报记录超长的错误。

我们来举个实际的案例,比如安装时页大小为 8 kB,那么一行记录的长度除大字段外所有列加起来不能超过 4 kB。

select page(); --8192

create table test(c1 int,c2 varchar(2000),c3 varchar(2000),c4 varchar(2000)); --可创建成功

insert into test values(1,LPAD(a,2000),a,a); --未超过 4 kB,可以插入成功

insert into test values(2,LPAD(a,2000),LPAD(a,2000),a); --超过 4 kB,报错:记录超长

update test set c3=LPAD(a,2000) where c1=1; --更新操作导致记录超长,报错

达梦数据库的页大小在整个实例生命周期都不能修改,除非重建实例。一半来说重建实例,进行数据的整体迁移是个比较好的选择,可以避免后期因为页大小限制带来的存储长度不够的问题。当然,也可以通过启动表的超出记录功能来取消限制。

举报/反馈

分享到:

  admin

注册时间:

网站:0 个   小程序:3 个  文章:0 篇

  • 452

    网站

  • 9

    小程序

  • 3601

    文章

  • 83

    会员

赶快注册账号,推广您的网站吧!
热门网站
最新入驻小程序

跳一跳2022-08-22

跳一跳是微信开发的一款小游戏,有

数独大挑战2018-06-03

数独一种数学游戏,玩家需要根据9

答题星2018-06-03

您可以通过答题星轻松地创建试卷

全阶人生考试2018-06-03

各种考试题,题库,初中,高中,大学四六

运动步数有氧达人2018-06-03

记录运动步数,积累氧气值。还可偷

每日养生app2018-06-03

每日养生,天天健康