签到成功

知道了

CNDBA社区CNDBA社区

DM7表名/字段名等对象的命名长度限制

2019-11-07 17:56 3604 0 原创 DM7
作者: semiter

一 问题

  业务升级过程中,涉及到数据库结构的更改,对于某些表的字段进行了重命名,在修改表的字段名的过程中,遇到了“标志符长度非法”的问题,如下图所示:

  这里先说明一下,对于DM7数据库,表名、字段名等对象命名字节个数限制在了128个字节,是无法更改的!具体参见《DM7_SQL语言使用手册》中的3.6.1 基表定义语句中的说明,摘录如下:http://www.cndba.cn/semiter/article/3784http://www.cndba.cn/semiter/article/3784http://www.cndba.cn/semiter/article/3784

  • 表名的要求:
    <表名> 指明被创建的基表名,基表名最大长度 128 字节;如果是分区表,主表名和分区名遵循“主表名+分区名”总长度不大于 128 字节。
  • 列名的要求:
    <列名> 指明基表中的列名,列名最大长度 128 字节;

  其实,我们通过查看DM7数据库的动态性能视图就可以得出结论:http://www.cndba.cn/semiter/article/3784http://www.cndba.cn/semiter/article/3784http://www.cndba.cn/semiter/article/3784http://www.cndba.cn/semiter/article/3784

SQL> desc USER_TAB_COLS
行号       name            type$        nullable
---------- --------------- ------------ --------
1          TABLE_NAME      VARCHAR(128) N
2          COLUMN_NAME     VARCHAR(128) N
3          DATA_TYPE       VARCHAR(128) N
4          DATA_TYPE_MOD   VARCHAR(3)   Y
5          DATA_TYPE_OWNER VARCHAR(128) Y
6          DATA_LENGTH     NUMBER       Y
7          DATA_PRECISION  NUMBER       Y
8          DATA_SCALE      NUMBER       Y
9          NULLABLE        VARCHAR(1)   Y
10         COLUMN_ID       NUMBER       Y
11         DEFAULT_LENGTH  NUMBER       Y

行号       name                 type$         nullable
---------- -------------------- ------------- --------
12         DATA_DEFAULT         TEXT          Y
13         NUM_DISTINCT         NUMBER        Y
14         LOW_VALUE            VARBINARY(32) Y
15         HIGH_VALUE           VARBINARY(32) Y
16         DENSITY              NUMBER        Y
………………………… 此处省略过多的输出

在上面的输出中,我们很明显的就可以看出,DM7对于表名与列名的长度限制;当然,在实际生产环境中,很难碰到表的列名超过128个字节的情况,除非……(各位脑补吧);http://www.cndba.cn/semiter/article/3784

二 总结

总结一下,对于各类数据库表名与字段名的长度限制要求,具体如下:

http://www.cndba.cn/semiter/article/3784
http://www.cndba.cn/semiter/article/3784

数据库 表名长度限制 字段名长度限制
oracle 30 30
mysql 64 64
db2 128 128
access 64 64
sqlserver 128 128
dm7 128 128
dm8 128 128

版权声明:本文为博主原创文章,未经博主允许不得转载。

达梦 DM 表 字段 长度

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
semiter

semiter

关注
  • 20
    原创
  • 0
    翻译
  • 0
    转载
  • 2
    评论
  • 访问:79024次
  • 积分:110
  • 等级:初级会员
  • 排名:第28名
精华文章
    热门文章
      Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

      AI QQ群