应该先建立一个序列号.CREATE
SEQUENCE
序列号的名称
(最好是表名+序列号标记)
INCREMENT
BY
1
START
WITH
1
MAXVALUE
99999
NOCYCLE
NOCACHE其中拆尘最大的值按字段的长度来定,比如定义的自动增长的序列NUMBER(6)
,
最大值为999999INSERT
语句插入这个字段值为:
序列号的名称.NEXTVAL例子:
SQL>
insert
into
s_dept(id,
name,
region_id)
values
(s_dept_id.nextval,
‘finance’,
2)1
row
created.只有运冲盯行了序列号的名称.
nextval后序列号的名称.
currval
才有效才有值.
oracle sql developer建表的时候id字段的自动递增的设置方法和步骤如下:
1、首先,打开sql
server数据库,创建一个新表,然后在表中创建id字段并选择int类型,如下图所示,然后进吵弊入下一步。
2、其次,完升中族成上述步骤培樱后,选择id字段,然后在下面的列属性中找到标识规范,如下图所示,然后进入下一步。
3、接着,完成上述步骤后,单击标识规范,可以看到默认值为“否”,这表示不递增,如下图所示,然后进入下一步。
4、然后,完成上述步骤后,将标识规范调整为“是”,将“标识增量”设置为1,然后单击保存按钮,如下图所示,然后进入下一步。
5、最后,完成上述步骤后,添加数据时ID将自动递增,如下图所示。这样,问题就解决了。
以sqlserver为例,按照你的要求,先有如下一张表,里面有相关的轿祥数据,所以可以采用alter table表名 add 列名 类型 约束。。如下:
create table test(
name varchar(10),
sex char(1),
profession varchar(15)
)
alter table test add id int identity check(id>1 and id<9999)
其中 identity 说明是自增
但是,正耐信常情况下,一张表是有主键约束的,你添加id是闭亩搏不是要重新设置约束呢,关于这点,可以先alter table drop constraint 约束名。。然后再
alter table test add id int identity check(id>1 and id<9999) 添加主键约束。。具体的 *** 作可以参考相关数据库的帮助文档
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)