DB2有没有与ORACLE一样的自动增长序列,怎样创建及使用,谢谢解答!

bitou 2003-08-09 10:31:10
就像oracle 里的sequence,请问怎样创建及使用呢,刚接触DB2,一个字,菜!
...全文
78 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
traveler_qt 2003-09-02
  • 打赏
  • 举报
回复
首先要建一个sequence
create sequenct sequence_name start with start_value [step step_value]
step step_value 是可选项,默认的时候是1

例:
创建:
create sequence seq_test start with 1
提取:
select nextval for seq_test from sysibm.sysdummy1
smartdonkey 2003-09-01
  • 打赏
  • 举报
回复
可以自己建立一个表,只有一个字段,每次存取这个表把数字加一完成。
jourmen 2003-08-15
  • 打赏
  • 举报
回复
我知道个用select时怎么显示序列的
不知道你派用处没:
select row_number() over() as No,id,name,... from tbl_name
bitou 2003-08-11
  • 打赏
  • 举报
回复
哪位大侠可以帮助我??
lingyunfeipu 2003-08-11
  • 打赏
  • 举报
回复
------------------------------------------------
-- 表的 DDL 语句 "USERID "."GROUPS"
------------------------------------------------

CREATE TABLE "USERID "."GROUPS" (
"NID" INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY ( START WITH +1 , INCREMENT BY +1 , NO CACHE ) ,
"PID" INTEGER NOT NULL WITH DEFAULT 0,
"LVL" INTEGER NOT NULL WITH DEFAULT 0,
"NAME" VARCHAR(30) ,
"REMARK" VARCHAR(30) ,
"DEPARTMENT" VARCHAR(30) )
IN "USERSPACE1" ;
jiezhi 2003-08-09
  • 打赏
  • 举报
回复
看序列的用法:
http://www-900.ibm.com/developerWorks/cn/dmdd/library/techarticles/0209sunshulong/index1.shtml
bitou 2003-08-09
  • 打赏
  • 举报
回复
谢谢,但我要的是能和oracle一样的能单独引用的序列,这种序列不一定是用来很数据库表里插数据,而是其它如用来自动生成编号,给图片命名等,不希望往表里插数据来确定序列,不知可否。
问:我正在 NT 上运行 DB2 V7 的黄金代码。我以为联合 DB 支持就意味着我可以连接不同 DB2 数据库中的两个表。 我尝试执行该操作,但没有成功。当我试图创建服务器时,我遇到了各种各样的语法错误。有人这样连接成功了吗 答:是的,这是可以支持的。如果您没有成功,我建议您查看 Admin Guide 中略述的有关联合数据库支持的步骤。然而,我通过使用控制中心来定义必要的别名等。您可能已经这样做了,而此时特定的 SQL 可能让人头疼。这就需要 FDB 开发者进行分析。对于 V7 中的 FDB,SQL 限于只读操作。 问: 顾客在 LDAP 服务器上定义了大量用户。DB2 可以用 LDAP 服务器来认证这些用户吗 答: LDAP 用于 DB2 中只是为了共享编目目录(即数据库和节点)。对于认证支持,我们只关注 Kerberos。 问: DB2 版本 7.1 中“技术预览”部分的介绍中曾经提到过增量备份可是在发行的G.A. 代码或命令参考手册中都没有此特性。是不是该特性推迟发行了?什么时候才可能用上?(下一发行版?补丁程序包?九月份?) 答: 在 DB2 V 7.1 未来的补丁程序包中将可用增量备份。 问:当我试图将我的 DB2 v5 数据库恢复至具有 DB2 v7.1 的新服务器时,得到以下消息。 (4)RalIds1E C:\\db2 restore db cqmsloc1 from m:\db20616 在备份映像中指示的 SQL2548N 数据库代码页“850”同当前磁盘上所指示数据库代码页“437”有所不同。恢复操作失败。 我试图切换 config.sys 为 850,437,但是却无济于事。 劳驾哪位帮忙解决这个问题。 答:我有两种克服该困难的办法,1. 在新机器上安装旧版本,先恢复,然后更新至新版本。 2. 创建一个同名数据库,设置欲设的代码页,然后进行恢复。 问: 客户要从 Oracle 移植到 DB2 UDB,而待移植项目之一就是序列 ID。但是,他们却发现 DB2 UDBV7 中的序列 ID 是在行插入时内部生成的,于是想要知道如何获得所插入行的 ID,以在其应用程序中显示。如果他们需要基于另一个唯一标识符来查询序列 ID 域,这看起来似乎就违背了序列号的用途,并且也增大了从 Oracle 移植的难度。对于插入到 V7 中的一行来说,检索其序列 ID 的方法是什么呢?谢谢。 答:在 V7.1 中提供了一个新函数 IDENTITY_VAL_LOCAL(),它允许应用程序检索插入的 ID 值。这在发行说明中有文档记录。 问: 我已经在 Win98 中安装了 DB2 PE/RC。Oracle NET8 和 SQL*PLUS 也已经安装。我可以针对 Oracle 使用别名。请问是否支持这种配置? 答: 不应该这样。声明信中说得清清楚楚: “下列产品需要一套经许可的 DB2 EE 或 EEE 的副本”

5,889

社区成员

发帖
与我相关
我的任务
社区描述
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
社区管理员
  • DB2
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧