wfj0220 发表于 2008-4-2 14:37:10

求助!!!

<p>我想从数据库里读取某列(就是编号)的最大值 然后再在一个sle控件里自动生成一个编号 </p>
<p>请问怎么做阿?谢谢</p>

ribut922 发表于 2008-4-29 09:08:57

<p>有一个问题,你现在读出来的最大值,放在SLE控件里,但是你并没有保存数据。在这期间,如果有其他用户也连在数据库中,并且也生成了最大编号,这样你的最大编号就有问题了<br/><br/>如果你的程序是单机版的<br/>那就很简单了<br/><br/>假如你的编号字段名是bh,类型是char(10),如果不足10位,前面补0<br/>比如0000000001等<br/><br/>string ls_max<br/>select max(bh)<br/>into :ls_max<br/>from mytable;<br/>if sqlca.sqlcode&lt;&gt;0 then<br/>&nbsp;&nbsp; messagebox("提示","数据库错误,检索最大编号失败:"+sqlca.sqlerrtext)<br/>&nbsp;&nbsp;&nbsp;return<br/>else<br/>&nbsp;&nbsp;&nbsp; //考虑到最初数据库里可能一条记录也没有,这时ls_max值可能为NULL<br/>&nbsp;&nbsp;&nbsp; if isnull(ls_max) then ls_max="0"</p>
<p>&nbsp;&nbsp; //将最大编号放在SLE控件里<br/>&nbsp;&nbsp; sle_1.text = string( long(ls_max)+1,'0000000000')<br/>end if<br/></p>
页: [1]
查看完整版本: 求助!!!

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com