|
lTransactionHandle := lQuery.Connection.Transaction.Start(True);
lnf:=SysUtils.FormatDateTime('yyyy', Business.Data.SysSrv.SysService.Time);
lQuery.Close;
//查询文号明细中的MAX
lQuery.CommandText := 'select * from YLJ_WHMXB where YYWHLX = '''+whlx+''' and NF='+lnf+' for update';
lQuery.Open;
max:=lQuery.FieldByName('Max').AsString;
//存在MAX则加1
if max<>'' then
begin
max:=inttostr(strtoint(max)+1);
wsh:=lnf+TCommonUtils.StrToRightLenStr(max, '0', 6);
lQuery.Close;
lQuery.CommandText := 'update YLJ_WHMXB set Max='+max+' where YYWHLX = '''+whlx+''' and NF='+lnf ;
lQuery.Execute;
end
lQuery.Connection.Transaction.Commit(lTransactionHandle);
我想对表YLJ_WHMXB 行锁来控制并发,但在执行到lQuery.Open时出现类未注册的错误,java.lang.classCastException 类型:EPojo.请问这是什么问题,还是我的写法有问题? |
|