數據庫自增實現


mysql  直接在字段后面加  AUTO_INCREMENT

oracle

主要是2點,首先是創建一個序列名sequence;
然后是,insert語句的時候:將自增的字段的位置,寫成序列名.nextval。

下面講解一下,從創建表開始,然后創建sequence,到insert語句怎樣寫,才能實現字段的自增一的整個過程。

1.首先創建表
 

CREATE TABLE "FLOWCAL"."T_USERINFO"
  ( "C_ID" NUMBER(*,0),
   "C_USER" VARCHAR2(20 BYTE),
   "C_PASSWORD" VARCHAR2(20 BYTE),
   "C_ROLE" VARCHAR2(20 BYTE),
   "C_COMMENT1" VARCHAR2(20 BYTE),
   "C_COMMENT2" VARCHAR2(20 BYTE)
  )
現在我想讓C_ID自增一。


2.首先創建一個oracle的sequence,sql語句如下:
create sequence 序列名
increment by 1
start with 1
maxvalue 999999999
cycle;
建立一個最小為1,最大為999999999的一個序列號會自動循環的序列


下面是我的sequence,如下:
CREATE SEQUENCE "FLOWCAL"."SEQ_USERINFO" 
MINVALUE 0
MAXVALUE 9999999999999999999999999999
INCREMENT BY 1
START WITH 24
CACHE 20
ORDER
CYCLE ;
 
3.通過序列名.nextval實現插入時,字段的自增一
當向表中插入數據時,SQL語句寫法如下:
SQL> insert into 表名 values(,列1值,列2值,....);
"序列名"可以替換為你需要的名字.

下面是我的insert語句:
insert into T_USERINFO values(SEQ_USERINFO.NEXTVAL,'111','11','11','11','11')

下面提供一張圖片,供參考:

oracle數據庫如何實現字段的自增一


免責聲明!

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



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