+ -
当前位置:首页 → 问答吧 → 创建一个users表,设置表中uid为主键,并设置成自动增长。

创建一个users表,设置表中uid为主键,并设置成自动增长。

时间:2011-12-07

来源:互联网

CREATE TABLE "SCOTT"."USERS" ("UID" NUMBER(10) NOT NULL primary key, "UNAME" 
  VARCHAR2(20) NOT NULL, "UDETY" VARCHAR2(20) NOT NULL, 
  "UREMARK" NVARCHAR2(500) NOT NULL, "UDEL" NUMBER(4) NOT NULL)
  TABLESPACE "USERS"

这是我之写的,就是不知道怎么设置uid自己增长。请高手帮忙。 


才开始学习oracle 请高手尽量说的详细一点。
如何设置成功后,在插入数据的时候,也像sql server一样,就不用写uid了吧?

作者: wpcpm   发布时间: 2011-12-07

oracle不能在建表时定义自动增长的列。
可以创建sequence(序列),然后在插入数据时,使用sequence进行自动增长。

示例代码如下:
SQL code

CREATE TABLE MyTable
(
    ID NUMBER(4),
    Other VARCHAR(20)
);

CREATE SEQUENCE MySequence
START START WITH 1 INCREMENT BY 1
MINVALUE 1 MAX VALUE 100
ORDER;

INSERT INTO MyTable VALUES(MySequence.nextval, 'aaa');

作者: LuiseRADL   发布时间: 2011-12-07