简要咨询咨询QQ网站导航网站搜索手机站点联系我们设为首页加入收藏 

DB2 自动递增字段实现方法

来源:易贤网   阅读:1390 次  日期:2014-10-14 11:12:21

温馨提示:易贤网小编为您整理了“DB2 自动递增字段实现方法”,方便广大网友查阅!

使用这个一般是用作识别码的,当做定义表格的主键。generated语法则可以自定义你想怎么产生这个值的策略。

语法如下:

column definition generated {always | by default}

as {identity identity rules | using your rules}

我们先删掉上次我们建立的表格:

db2 => drop table nomination

然后再创建一个表格:

代码如下:

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技术专栏

更多信息请查看数据库
点此处就本文及相关问题在本站进行非正式的简要咨询(便捷快速)】     【点此处查询各地各类考试咨询QQ号码及交流群
上一篇:DB2 日期和时间的函数应用说明
下一篇:创建一个空的IBM DB2 ECO数据库的方法
易贤网手机网站地址:DB2 自动递增字段实现方法
由于各方面情况的不断调整与变化,易贤网提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!