-- identity(1, 1)自增
create table "PAM_ADMIN"."table1"
(
"id" INT identity(1, 1) not null ,
"name" VARCHAR(50),
"sex" VARCHAR(50),
primary key("id")
)
storage(initial 1, next 1, minextents 1, fillfactor 0);
comment on table "PAM_ADMIN"."table1" is '测试用表1';
设置identity自增时,直接使用Insert时会报错:
-2723: 第1 行附近出现错误:
仅当指定列列表,且SET IDENTITY_INSERT为ON时,才能对自增列赋值
需要先设置:
SET IDENTITY_INSERT "PAM_ADMIN"."table1" ON;
insert into "PAM_ADMIN"."table1"(ID,NAME,SEX) values(1,'张三','男');
insert into "PAM_ADMIN"."table1"(ID,NAME,SEX) values(2,'张三','男');
SET IDENTITY_INSERT "PAM_ADMIN"."table1" off;
-- auto_increment自增(所在列必须是主键primary key)
create table "PAM_ADMIN"."table2"
(
"id" INT auto_increment not null ,
"name" VARCHAR(50),
"sex" VARCHAR(50),
primary key("id")
);
INSERT into "PAM_ADMIN"."table2" values(3,'张三','男');
INSERT into "PAM_ADMIN"."table2" values(4,'张三','男');
INSERT into "PAM_ADMIN"."table2" values(null,'张三','男');
INSERT into "PAM_ADMIN"."table2" values(null,'张三','男');
INSERT into "PAM_ADMIN"."table2" values(null,'张三','男');
都是自增列,identity(1, 1)是达梦原生的自增,auto_increment是兼容的Mysql,若原库是mysql数据库的话,迁移到达梦时需要注意自增方式需要选择auto_increment。
达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台