access数据库,一表中有一字段bid,形式为‘2002-0001’,如何在新增一条新记录时,使bid字段自动加1,如‘2002-0002’? 如题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我这里有一个自动添加编号的函数,满足的就是类似于你的这种要求,具体的可以根据你的需要再加以修改:function GetAutoCode(ADOConnection1 : TADOConnection; Table_str : string; Column_str : string ; CurrDate_str : String; CodeLen : integer) : string;var tmpNum,i : integer; MaxBillNo, tmpMax : String; tmp_format : array[0..20] of char; ADOdatasettmp : TADODataSet;begin ADOdatasettmp := TADODataSet.Create(nil); ADOdatasettmp.Connection := ADOConnection1; FillChar(tmp_format, CodeLen, '0'); ADOdatasettmp.CommandText := 'select max(' + Column_str + ') MaxBillNO from ' + Table_str + ' where ' + Column_str + ' like''' + CurrDate_str + '%''' ; ADOdatasettmp.Open; MaxBillNo := ADOdatasettmp.FieldByName('MaxBillNO').AsString; if MaxBillNo<>'' then begin tmpMax := copy(MaxBillNo,9,length(MaxBillNo) - 8); tmpNum := StrToInt(tmpMax) + 1; tmpMax := InttoStr(tmpNum); end else tmpMax := '1'; tmpMax := copy(tmp_format,1,CodeLen - 8 - length(tmpMax)) + tmpMax; Result := CurrDate_str + tmpMax;end; 同意楼上,若要显示指定的格式就只有自己写代码了,不然你可以用Asscess的自动编号. Delphi面试的问题 消息问题 急:错误提示“分布式事务已完成,请将会话登记到新事务或NULL事务中” 请教delphi高手,关于installshield安装 数据导出为excel文件问题 我想做一个简单的绘图程序,但不知道类似windows自带的画板里的“橡皮擦”功能怎么实现? Delphi中OleContainer控件中内容如何保存成excel 联机多用户的并发处理? 哪有Delphi6的Update 1或 2 下载 sql语句的中文参数问题 怎样将一个十六进制串转换为十进制整数 ★★★书上的一道关于链表的例题,请大家看一看,谢谢了。我给100分!不来后悔!!
function GetAutoCode(ADOConnection1 : TADOConnection; Table_str : string; Column_str : string ; CurrDate_str : String; CodeLen : integer) : string;
var
tmpNum,i : integer;
MaxBillNo, tmpMax : String;
tmp_format : array[0..20] of char;
ADOdatasettmp : TADODataSet;
begin
ADOdatasettmp := TADODataSet.Create(nil);
ADOdatasettmp.Connection := ADOConnection1;
FillChar(tmp_format, CodeLen, '0');
ADOdatasettmp.CommandText := 'select max(' + Column_str + ') MaxBillNO from ' + Table_str + ' where ' + Column_str + ' like''' + CurrDate_str + '%''' ;
ADOdatasettmp.Open;
MaxBillNo := ADOdatasettmp.FieldByName('MaxBillNO').AsString;
if MaxBillNo<>'' then
begin
tmpMax := copy(MaxBillNo,9,length(MaxBillNo) - 8);
tmpNum := StrToInt(tmpMax) + 1;
tmpMax := InttoStr(tmpNum);
end
else
tmpMax := '1';
tmpMax := copy(tmp_format,1,CodeLen - 8 - length(tmpMax)) + tmpMax;
Result := CurrDate_str + tmpMax;
end;