db2表字段修改
1:刪除字段非空屬性
alter table XXX alter column XXX drop not null
2:添加字段非空屬性
alter table XXX alter column XXX set not null
3:添加一個新字段
alter table XXX add column XXXX varchar(100)
4:刪除一個字段
alter table XXX drop column XXX
5:增加字段的長度
alter table XXX alter column XXX set data type varchar(100)
注意:
1:不允許修改字段的名稱(只能先刪除,再添加)。
2:不允許減小字段的長度。
3:不允許修改字段類型(如把 Integer 修改成 varchar)。
4:如果必須修改上三條中的情況,只能重新建表(第一條有簡單方法)。
- 1.更改類型(設置為主鍵的列不能更改類型)
- ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" SET DATA TYPE VARCHAR(32);
- 2.更改默認值
- ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" SET DEFAULT 'ABC';
- 系統默認值:
- ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" SET DEFAULT; --設置默認值
- ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" DROP DEFAULT; --刪除默認值
- 3.更改是否允許空值
- ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" SET NOT NULL;
- ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" DROP NOT NULL;
- 更改列類型,是否允許空值后,需要執行REORG TABLE "TABLENAME";
- 更改默認值后,通常需要執行UPDATE "SCHEMA"."TABLENAME" SET "COL" = DEFAULT WHERE "COL" IS NULL;