CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  PowerBuilder >  基础类

请教,我如何实现自动增长的问题?

楼主superrechard(天飞)2003-11-03 10:42:53 在 PowerBuilder / 基础类 提问

比如说,我创建了一个表,表中有id这一列,程序自动按从小到大的顺序显示动态产生的列.怎么样才能按自己的顺序排.譬如,1,2,3,4,5,6,7,8,9,10.....  
  请高手指点.急啦!万分感谢  
  问题点数:0、回复次数:13Top

1 楼bomber2001(沧海飘舟)回复于 2003-11-03 11:26:09 得分 0

可以自己写程序,  
  long   ll_id  
  select   max(id)   into   :ll_id   from   ..;  
  if   isnull(ll_id)   then   ll_id   =   0  
  ...........  
  也可以用oracle得序列来。。。。。。。。。。。Top

2 楼superrechard(天飞)回复于 2003-11-03 12:10:56 得分 0

麻烦你写详细一点,谢谢!,还有,用oracle又该如何写呢??Top

3 楼lmby(鹿门布衣)回复于 2003-11-03 12:29:39 得分 0

在oracle里创建一个sequence   seq_id  
   
  用的时候  
   
  select   seq_id.nextval   from   dual;Top

4 楼zhangdatou(猪头)回复于 2003-11-03 12:39:03 得分 0

创建一个序列Top

5 楼superrechard(天飞)回复于 2003-11-03 17:12:26 得分 0

但是我实在不想用序列来实现这个功能,我的老师不让我用序列,他说比较麻烦,而且维护也不好,又没有别的办法呢???,麻烦诸位大侠,指点我吧,写详细一点,用pb和oracle  
  分别应该怎样写???我真的很急!!!谢谢你们!!  
  还有一个问题,程序如下:uf_today  
  date   ls_today  
   
  //DECLARE   p_in_out   PROCEDURE   FOR   sp_today;  
  //EXECUTE   p_in_out;  
  //FETCH   P_IN_OUT   INTO   :ls_today;  
  //CLOSE   P_IN_OUT;  
   
  DECLARE   p_in_out   PROCEDURE   FOR   F_TODAY;  
  EXECUTE   p_in_out;  
  FETCH   P_IN_OUT   INTO   :ls_today;  
  CLOSE   P_IN_OUT;  
   
  IF   SQLCA.SQLCODE   <>   0   THEN  
  MESSAGEBOX('',   SQLCA.SQLERRTEXT)  
  END   IF  
   
  return   date(datetime(ls_today,time('00:00:00')))  
   
  用//的地方表示什么意思呢????  
   
   
   
   
  Top

6 楼lmby(鹿门布衣)回复于 2003-11-03 17:17:24 得分 0

faint  
  //表示注释  
   
  不用序列的话,  
   
  long   ll_id  
   
  select   max(id)   into   :ll_id   from   table;  
   
  if   isnull(   ll_id   )   then   ll_id   =   0   else   ll_id   ++  
   
  ll_id即为所求Top

7 楼eminena(俄罗斯方块)回复于 2003-11-03 17:40:08 得分 0

多吃盖中盖!Top

8 楼treesoft(长沙水)回复于 2003-11-03 18:26:37 得分 0

那一段是不用的代码,下面的是一个存储过程游标。它是从数据库中的函数F_TODAY取得一个返回值。这个值应该是数据库服务器上的系统日期,在返回的时候加上时间!Top

9 楼ldy(罗大佑)回复于 2003-11-03 18:52:35 得分 0

吃了盖中盖,干24小时工作也不觉得累Top

10 楼superrechard(天飞)回复于 2003-11-03 20:37:51 得分 0

我是说注释后面的语句是什么意思??Top

11 楼lmby(鹿门布衣)回复于 2003-11-03 20:42:20 得分 0

DECLARE   p_in_out   PROCEDURE   FOR   F_TODAY;//声明存储过程  
  EXECUTE   p_in_out;//执行存储过程  
  FETCH   P_IN_OUT   INTO   :ls_today;//将存储过程的结果赋予变量ls_today  
  CLOSE   P_IN_OUT;//关闭存储过程  
   
  IF   SQLCA.SQLCODE   <>   0   THEN//如果sqlca.sqlcode<>0说明有错,报错。  
  MESSAGEBOX('',   SQLCA.SQLERRTEXT)  
  END   IF  
   
  return   date(datetime(ls_today,time('00:00:00')))//将ls_todat转化成date后返回  
   
  哈哈!!!Top

12 楼jeff_107(笑眯眯)回复于 2003-11-03 20:45:48 得分 0

呵呵。路过,我就不说了Top

13 楼hnhhcj(亦凡)回复于 2003-11-10 13:05:47 得分 0

gzingTop

相关问题

  • 请问oracle中如何实现象sql server中的自动增长列?
  • 在SQL Server中一个表的列值自动增长如何实现?
  • 一个好普通的问题:如何实现某个字段为自动增长类型?
  • 如何实现自增长类型?
  • 如何让IE实现自动刷新?
  • 如何实现让NT自动登陆
  • 如何用vb实现自动点击?
  • 如何实现自动滚屏......
  • delphi如何实现自动关机?
  • 如何实现自动加1

关键词

  • 存储过程
  • oracle
  • date
  • sqlca
  • today
  • 序列
  • ll
  • ls
  • sqlcode
  • 麻烦

得分解答快速导航

  • 帖主:superrechard

相关链接

  • PowerBuilder类图书
  • PowerBuilder类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo