oracle 创建序列,序列的默认值类型是数字么,不能用函数和SQL语句么?

有一张表a,里面有十条数据,id从1开始到10,现在要创建一个序列,以后每增加一条数据,id自动加1,从10开始,创建序列的默认开始为表a的id最大值,大家知道怎么做吗?... 有一张表a,里面有十条数据,id从1开始到10,现在要创建一个序列,以后每增加一条数据,id自动加1,从10开始,创建序列的默认开始为表a的id最大值,大家知道怎么做吗?在线等。 展开
 我来答
百度网友884aad6
2013-06-18 · 超过12用户采纳过TA的回答
知道答主
回答量:39
采纳率:0%
帮助的人:32.4万
展开全部
没太懂你的意思 如果你的表里已经有10 条数据 你创建序列可以从11 开始 每次增1 创建个触发器在每次插入数据的时候 id自增
追问
是的,就是这样,但是现在11这个数字我不知道,我要用查询才能得出来,而且项目组需要最好在创建序列这条SQL中就能查询出11这个数据,但是create SEQUENCE log_new_sequence 
INCREMENT BY 1
START WITH (select max(id) from a)
CACHE 10;
这样写是不行的。
追答
序列的初始值是不可以改变的 按照你这么写  初始值就是个不定数值  当然不可以 
你在创建序列的时候 先查询出来表有多少条数据 之后再创建不就可以么 除非你的表的数据在随时变化
TableDI
2024-07-18 广告
仅需3步!不写公式自动完成Excel vlookup表格匹配!Excel在线免,vlookup工具,点击26步自动完成表格匹配,无需手写公式,免费使用!... 点击进入详情页
本回答由TableDI提供
百度网友6c7230a
2013-06-18
知道答主
回答量:14
采纳率:0%
帮助的人:8.8万
展开全部
不太懂 不太懂不太懂
更多追问追答
追问
start witch 1 这是创建序列的默认值为1,现在如果我想实现 start witch (select max(id)from a) 知道如何实现么?
追答
设置id为主键不是就可以了吗,是不是有自增
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式