• 解决达梦数据库新增大字段报错问题


    使用达梦数据库穿件新表后往新表中增加TEXT类型字段报错,错误信息如下:

    错误号:   -3243
    
    错误消息: 第1 行附近出现错误:
    表[TABLE_2]中不能同时包含聚集KEY和大字段
    
    ---------------------------------
    alter table "GFSTACK"."TABLE_2" add column("COLUMN_2" TEXT);

    错误截图:

    如果建表时直接新增一列TEXT字段则没问题,两张表的建表语句如下:

    CREATE TABLE "GFSTACK"."TABLE_2"
    (
    "COLUMN_1" VARCHAR(50) NOT NULL,
    CLUSTER PRIMARY KEY("COLUMN_1")) STORAGE(ON "MAIN", CLUSTERBTR) ;
    
    
    CREATE TABLE "GFSTACK"."TABLE_3"
    (
    "COLUMN_1" VARCHAR(50) NOT NULL,
    "COLUMN_2" TEXT,
    NOT CLUSTER PRIMARY KEY("COLUMN_1")) STORAGE(ON "MAIN", CLUSTERBTR) ;

    区别在于一个是“CLUSTER PRIMARY KEY”,一个是“NOT CLUSTER PRIMARY KEY”,如果建表时指定“NOT CLUSTER PRIMARY KEY”则可以随时添加大字段

    如果是通过DM管理工具(类似于PLSQL)界面建表或者hibernate自动建表,主键是不会指定“CLUSTER”或“NOT CLUSTER”的,直接就是“PRIMARY KEY”,这个时候就需要手动修改达梦数据库配置了

    咨询达梦技术交流群,回复修改dm.ini配置文件中的“PK_WITH_CLUSTER”配置为0即可,其实通过DM控制台工具修改一样可以,修改完成后记得重启数据库实例,如果不行,则重启服务器

  • 相关阅读:
    用Canvas绘制一个钟表
    用css3做一个3D立方体
    函数调用的不同方式,以及this的指向
    Javascript 严格模式use strict详解
    前端开发页面的性能优化方案总结
    Promise对象解读
    Vue爬坑之vuex初识
    WEB前端性能优化小结
    navicat 注册码
    docker
  • 原文地址:https://www.cnblogs.com/nihaorz/p/11804891.html
Copyright © 2020-2023  润新知