数据库顺序码问题,很急,还请各位帮忙啊!(50)

  • 主题发起人 主题发起人 shubiao123
  • 开始时间 开始时间
S

shubiao123

Unregistered / Unconfirmed
GUEST, unregistred user!
我想做一个数据库的编码,就是有点类似身份证的编码,前边的位数由区划、生日组成,而顺序码是怎样生成的每次,比如有同年同月同日生的,怎样知道是第几个了,怎样自动生成下一个?
 
var Code,sql:String; C:String;begin Code:=区划+生日; sql:=format('Select Count(*) from 表1 where 编码 like ''%s%%'' ',
代码:
);  query1.close;  query1.sql.text:=sql;  query1.open;  C:=IntToStr(query1.Fields[0].AsInteger+1);  while Length(C)<3 do C:='0'+C;  Code:=Code+C; //你需要的号码end;
 
那如果首次生成怎么办?比如同一区划同一生日的第一个人,或者同一区划不同生日的第一个人?
 
znxia 说的都对。都告诉你了。哎!如果是第一个人, Code:=Code+'001';
 
后退
顶部