作者guest2008 (guest)
看板Programming
标题Re: [问题] Delphi文字档存入资料库
时间Thu Sep 27 05:48:28 2012
看起来你是网路程式码乱抄,你根本不懂你写的程式码在做啥事。
你的按钮 1 的行为"永远"会把你的资料库资料全清空,你知道吗??
你要是需求是把txt资料先放在介面,等使用者按按钮确认才真储存,
应该是摆放 StringGrid。
DBGrid 要是能显示出资料,实际上早就吃进资料库了,
没资料原因是你又去按按钮1 又把资料库砍掉,重新定义一次。
※ 引述《small521 (薄荷绿)》之铭言:
: 请问各位版大,我写了2个BUTTON,第一个BUTTON读取文字档并显示在DBGRID
: 等待USER确认无误,按BUTTON2存档至资料库中
: 目前问题,显示至DBGGRID没有问题,但是按下BUTTON不会存档至资料库
: 请版大协助~谢谢
: procedure TForm1.Button1Click(Sender: TObject);
: var
: f: textfile;
: wStr,filename: String;
: wList: TStringList;
: i: Integer;
: begin
: if OpenTextFileDialog1.Execute then
: filename:= OpenTextFileDialog1.FileName;
: if fileexists(filename)=true then
: begin
: wList := TStringList.Create;
: ADODataSet1.Close;
: ADODataSet1.FieldDefs.Clear;
: ADODataSet1.FieldDefs.Add('ID', ftInteger);
: ADODataSet1.FieldDefs.Add('DAT_SRDT', ftString, 8);
: ADODataSet1.FieldDefs.Add('NUM_PS', ftString, 12);
: ADODataSet1.FieldDefs.Add('COD_EMP', ftString, 5);
: ADODataSet1.FieldDefs.Add('LIN_SRDT', ftString, 2);
: ADODataSet1.CreateDataSet;
: i := 1;
: Assignfile(f, filename);
: Reset(f);
: while not eof(f) do
: begin
: Readln(f, wStr);
: wList.CommaText := wStr;
: ADODataSet1.Append;
: ADODataSet1.FieldByName('ID').AsInteger := i;
: ADODataSet1.FieldByName('DAT_SRDT').AsString := wList[0];
: ADODataSet1.FieldByName('NUM_PS').AsString := wList[1];
: ADODataSet1.FieldByName('COD_EMP').AsString := wList[2];
: ADODataSet1.FieldByName('LIN_SRDT').AsString := wList[3];
: Inc(i);
: end;
: closefile(f);
: wList.Free;
: end;
: end;
: procedure TForm1.Button2Click(Sender: TObject);
: begin
: ADODataSet1.updateBatch(arAll);
: end;
: end.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 1.170.10.182