2016年5月30日 星期一

[DB]Oracle與MS SQL自動編號的比較

MS SQL在自動編號上比較方便,只要將欄位設定為IDENTITY(1,1)就可以了
但在Oracle就要先增加一個Sequence,然後利用這個Sequence來產生編號

MS SQL
--建立資料表
CREATE TABLE [Table]
(
[ID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NULL
) ON [PRIMARY]


--新增一筆資料
INSERT INTO [TABLE] VALUES('ABC')


ORACLE
--建立資料表
CREATE TABLE "TEST"
(
"ID" NUMBER,
"NAME" NVARCHAR2(50)
) ;

--建立Sequence
CREATE SEQUENCE "SEQ_TEST"
MINVALUE 1
MAXVALUE 999999999
INCREMENT BY 1
START WITH 1 ;

--新增一筆資料並利用Sequence自動產生編號
INSERT INTO TEST VALUES(SEQ_TEST.NEXTVAL,'ABC')

沒有留言:

張貼留言