ORACLE中序列NEXTVAL的问题
INSERTINTOHLP_PERSON_PRE(HASHCODE,SEQ_NO,PARTY_ID)SELECTNULLASHASHCODE,PERSON_SEQ.NEX...
INSERT INTO HLP_PERSON_PRE (HASHCODE ,SEQ_NO ,PARTY_ID
) SELECT NULL AS HASHCODE ,PERSON_SEQ.NEXTVAL AS SEQ_NO ,PERSON_SEQ.NEXTVAL AS PARTY_ID FROM PERSON
查询了下,如下图:
为什么SEQ_NO和PARTY_ID会是一样的呢?
序列的值不是NEXTVAL一次,就消耗一次吗,如果第一次NEXTVAL是1,第二次NEXTVAL不就是2了么? 展开
) SELECT NULL AS HASHCODE ,PERSON_SEQ.NEXTVAL AS SEQ_NO ,PERSON_SEQ.NEXTVAL AS PARTY_ID FROM PERSON
查询了下,如下图:
为什么SEQ_NO和PARTY_ID会是一样的呢?
序列的值不是NEXTVAL一次,就消耗一次吗,如果第一次NEXTVAL是1,第二次NEXTVAL不就是2了么? 展开
4个回答
2015-07-24
展开全部
是的,Oracle就是这样,这里不会增加。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
肯定是其他的地方调用了序列,看看程序里面其他地方,在你insert操作前后有对序列相关的调用。直接执行sql语句序列加的应该是1,如果查询currentval加了2的话,看看在这张表上有没有相关insert的触发器,也调用了序列。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-07-28
展开全部
private void MyPrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
public static boolean isNumeric(String str){
if(str.matches("//d*"){
return true;
}else{
return false;
}
}
public static boolean isNumeric(String str){
if(str.matches("//d*"){
return true;
}else{
return false;
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
同一次SELECT 的行迭代中是一样的,
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询