你不要着急写代码。首先你需要确定你的记录由于删除等操作是否会更新,比如删除了01005这个记录,后面的记录需不需要更新;其次,若有几个人同时修改记录是怎么办?(即你需要设置该表以独占的方式打开);第三,你这个编号有无其他意义,若仅仅只是一个编号那就无需多言,若还表示其它意义,则需要考虑编号的意义,比如学生学号201210101007,前四位代表入学年份,中间四位代表院系,后四位为顺序号(假设)。你在考虑这几点之后在写代码吧。
用下面代码,在单机使用时应该可行。
IF EMPTY(序号)
SELECT MAX(序号) FROM 居民信息 INTO ARRA A
CEND=VAL(A)+1
XH=PADL(ALLT(STR(CEND,5)),5,'0')
select 居民信息
repl 序号 with XH
endif