解決達夢數據庫新增大字段報錯問題


使用達夢數據庫穿件新表后往新表中增加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控制台工具修改一樣可以,修改完成后記得重啟數據庫實例,如果不行,則重啟服務器


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM