插入后立刻查询的不能查出来的问题
我在数据库里面先插入一条纪录,然后立刻查询打印出来,可是每次总是打印出倒数第二条数据,这是为什么?代码如下:
dyfp.ConnectionString:=Index.ConnStr;
with dyfp do
begin
close;
Sql.Clear;
Sql.Add('Insert Into [sf] ([jfdw],[yf],[sfxm_1],[je_1],[sfxm_2],[je_2],'
+'[sfxm_3],[je_3],[sfxm_4],[je_4],[sfrq],[hj],[sfry],[dxje]) Values ('
+''''+jfdw.Text+''','''+yf.Text+''','''+shljqyf+''','''+qyf.Text+''','''+mqbjfwf+''','
+''''+fwf.Text+''','''+jzljczf+''','''+czf.Text+''','''+shljczf_1+''','
+''''+shljczf.Text+''','''+datetostr(date)+''','''+hj.Text+''','''+index.current_user+''','''+daxie+''')');
ExecSql;
//Refresh;
//showmessage('Success');
end;
//打印发票
// dyfp.Refresh;
Index.Query_index.ConnectionString:=Index.ConnStr;
With Index.Query_index do
begin
Active:=false;
Active:=true;
close;
Sql.Clear;
Sql.Add('select * from sf order by id desc');
Open;
end;
f_page.QuickRep1.Print;
end
Else
begin
showmessage('已经收费');
end;
jfdw.Clear;
yf.Clear;
qyf.Clear;
czf.Clear;
fwf.Clear;
hj.Clear;
end;
procedure Tf_sf.qyfKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if hj.Text='' then
begin
hj.Text:=qyf.Text ;
end
else
begin
if qyf.Text='' then
qyf.Text:='0';
if fwf.Text='' then
fwf.Text:='0';
if czf.Text='' then
czf.Text:='0';
if shljczf.Text='' then
shljczf.Text:='0';
hj.Text:=Floattostr(StrToFloat(qyf.Text)+StrToFloat(fwf.Text)+StrToFloat(czf.Text)+StrToFloat(shljczf.Text));
if qyf.Text='0' then
qyf.Text:='';
if fwf.Text='0' then
fwf.Text:='';
if czf.Text='0' then
czf.Text:='';
if shljczf.Text='0' then
shljczf.Text:='';
end;