DB2 自動遞增字段實現(xiàn)方法
來源:易賢網 閱讀:1850 次 日期:2014-10-14 11:12:21
溫馨提示:易賢網小編為您整理了“DB2 自動遞增字段實現(xiàn)方法”,方便廣大網友查閱!

使用這個一般是用作識別碼的,當做定義表格的主鍵。generated語法則可以自定義你想怎么產生這個值的策略。

語法如下:

column definition generated {always | by default}

as {identity identity rules | using your rules}

我們先刪掉上次我們建立的表格:

db2 => drop table nomination

然后再創(chuàng)建一個表格:

代碼如下:

Create table nomination

(

nominationID BIGINT Not Null Primary Key generated always as identity,

nominee char(6) Not Null,

nominator char(6) Not Null,

reason VARCHAR(250),

nomdate date Not Null,

categoryid INTEGER Not Null,

check (nominee != nominator) not enforced enable query optimization,

Foreign Key CategoryExists (categoryid)

references category (categoryid) on delete restrict

)

注意黑體字,以后我們就不能使用insert或者update來顯式的指定它的值了。

而DB2中的identity也提供了多種策略,具體的可以去查DB2手冊,我們舉例如下:

我們先刪掉上次我們建立的表格:

db2 => drop table category

然后建立表單

代碼如下:

Create table category

(

CategoryID INTEGER Primary Key Generated Always as Identity

(Start With 1 Increment by 1 minvalue 0 maxvalue 999999999

no cycle cache 5 no order),

CateogryName VARCHAR(50) Not Null,

Eligibility VARCHAR(250)

)

黑體字中identity中的語句你都能在DB2的手冊中查到,都是自然語言一看就懂了。

有時候你并不只想去做數字的填充,你可能還想處理一些字母,那么下邊這個轉換大寫的例子就是給你的:

db2 => alter table category add column

UpperCatName VARCHAR(50) generated always as (upper(CategoryName))

關于這些在DB2的文檔里都有具體說明。

更多信息請查看IT技術專欄

更多信息請查看數據庫
易賢網手機網站地址:DB2 自動遞增字段實現(xiàn)方法
關于我們 | 聯(lián)系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網