小弟的代码为:
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, DB, DBTables, Grids, DBGrids;type
Torderrelation= record
FeeUser : String;
DestUser : String;
ActionID : String;
ActionReasonID : String;
ServiceID : String;
AccessMode : String;
FeatureStr : String;
OrderTime : String;
CancelTime : String;
end;
TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
Memo2: TMemo;
Button2: TButton;
OpenDialog1: TOpenDialog;
Button3: TButton;
Database1: TDatabase;
Query1: TQuery;
Table1: TTable;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.DFM}procedure TForm1.Button1Click(Sender: TObject);
var
f:textfile;
s:string;
i,j:integer;
begin
if opendialog1.Execute then
begin
memo1.Clear;
i:=0;
j:=0;
AssignFile(F, OpenDialog1.FileName); { File selected in dialog }
Reset(F);
while not eof(f) do
begin
Readln(F, S); { Read first line of file }
memo1.Lines.Append(s);
inc(i);
end;
end;
CloseFile(F);
showmessage('导入完毕!');
button2.Enabled:=true;
//button3.Enabled:=true;
end;
//end;procedure TForm1.Button2Click(Sender: TObject);
var
i,j : integer;
x : Torderrelation;
temp : String;
begin
// x := Torderrelation.Create;
Memo2.Lines.Clear;
for i := 0 to Memo1.Lines.count-1 do
begin
temp := copy(Memo1.Lines[i],1,14);
j := length(Memo1.Lines[i]);
if copy(Memo1.Lines[i],1,10) = 'FeeUser_ID'then
x.FeeUser := copy(trim(Memo1.Lines[i+2]),9,length(trim(Memo1.Lines[i+2]))-8);
if copy(Memo1.Lines[i],1,11) = 'DestUser_ID' then
x.DestUser :=copy(trim(Memo1.Lines[i+2]),9,length(trim(Memo1.Lines[i+2]))-8);
if copy(Memo1.Lines[i],1,8) = 'ActionID' then
x.ActionID := Copy(Memo1.Lines[i],10,length(Memo1.Lines[i])-9);
if copy(Memo1.Lines[i],1,14) ='ActionReasonID' then
x.ActionReasonID := Copy(Memo1.Lines[i],16,length(Memo1.Lines[i])-14);
if copy(Memo1.Lines[i],1,11) ='SPServiceID' then
x.ServiceID := Copy(Memo1.Lines[i],13,length(Memo1.Lines[i])-11);
if copy(Memo1.Lines[i],1,10) ='AccessMode' then
x.AccessMode := Copy(Memo1.Lines[i],12,length(Memo1.Lines[i])-10);
if copy(Memo1.Lines[i],1,10) ='FeatureStr' then
begin
x.FeatureStr := Copy(Memo1.Lines[i],12,length(Memo1.Lines[i])-10);
x.OrderTime := TimeToStr(Time);
x.CancelTime := TimeToStr(Time);
Memo2.Lines.Add(x.FeeUser);
Memo2.Lines.Add(x.DestUser);
Memo2.Lines.Add(x.ActionID);
Memo2.Lines.Add(x.ActionReasonID);
Memo2.Lines.Add(x.ServiceID);
Memo2.Lines.Add(x.AccessMode);
Memo2.Lines.Add(x.FeatureStr);
Memo2.Lines.Add(x.OrderTime);
Memo2.Lines.Add(x.CancelTime);
Memo2.Lines.Add('----------------------------------------------');
end;
end;
button2.Enabled:=false;
button3.Enabled:=true;end;procedure TForm1.Button3Click(Sender: TObject);
var
i : integer;
x : Torderrelation;
begin
memo2.Clear;
button2.Enabled:=false;
i := 0;
query1.Active := true;
while i <= memo2.Lines.count-1 do
begin
x.FeeUser := memo2.Lines[i];
x.DestUser := memo2.Lines[i+1];
x.ActionID := memo2.Lines[i+2];
x.ActionReasonID := memo2.Lines[i+3];
x.ServiceID := memo2.Lines[i+4];
x.AccessMode := memo2.Lines[i+5];
x.FeatureStr := memo2.Lines[i+6];
x.OrderTime := memo2.Lines[i+7];
x.CancelTime:= memo2.Lines[i+8];
i := i+10;
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('insert into orderrelation values(:a,:b,:c,:d,:e,:f,:g,:h,:i)');
query1.ParamByName('a').AsString:=x.FeeUser;
query1.ParamByName('b').AsString:=x.DestUser;
query1.ParamByName('c').AsInteger:=strtoint(x.ActionID);
query1.ParamByName('d').AsInteger:=StrToInt(x.ActionReasonID);
query1.ParamByName('e').AsString:=x.ServiceID;
query1.ParamByName('f').AsInteger:=StrToInt(x.AccessMode);
query1.ParamByName('g').AsString:=x.FeatureStr;
query1.ParamByName('h').AsString:=x.OrderTime;
query1.ParamByName('i').AsString:=x.CancelTime;
//end;
query1.ExecSQL;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
button2.Enabled:=false;
button3.Enabled:=false;
end;end.现在包里面的数据已经读出来了,但是写不到
数据库,希望老大指点一下
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, DB, DBTables, Grids, DBGrids;type
Torderrelation= record
FeeUser : String;
DestUser : String;
ActionID : String;
ActionReasonID : String;
ServiceID : String;
AccessMode : String;
FeatureStr : String;
OrderTime : String;
CancelTime : String;
end;
TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
Memo2: TMemo;
Button2: TButton;
OpenDialog1: TOpenDialog;
Button3: TButton;
Database1: TDatabase;
Query1: TQuery;
Table1: TTable;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.DFM}procedure TForm1.Button1Click(Sender: TObject);
var
f:textfile;
s:string;
i,j:integer;
begin
if opendialog1.Execute then
begin
memo1.Clear;
i:=0;
j:=0;
AssignFile(F, OpenDialog1.FileName); { File selected in dialog }
Reset(F);
while not eof(f) do
begin
Readln(F, S); { Read first line of file }
memo1.Lines.Append(s);
inc(i);
end;
end;
CloseFile(F);
showmessage('导入完毕!');
button2.Enabled:=true;
//button3.Enabled:=true;
end;
//end;procedure TForm1.Button2Click(Sender: TObject);
var
i,j : integer;
x : Torderrelation;
temp : String;
begin
// x := Torderrelation.Create;
Memo2.Lines.Clear;
for i := 0 to Memo1.Lines.count-1 do
begin
temp := copy(Memo1.Lines[i],1,14);
j := length(Memo1.Lines[i]);
if copy(Memo1.Lines[i],1,10) = 'FeeUser_ID'then
x.FeeUser := copy(trim(Memo1.Lines[i+2]),9,length(trim(Memo1.Lines[i+2]))-8);
if copy(Memo1.Lines[i],1,11) = 'DestUser_ID' then
x.DestUser :=copy(trim(Memo1.Lines[i+2]),9,length(trim(Memo1.Lines[i+2]))-8);
if copy(Memo1.Lines[i],1,8) = 'ActionID' then
x.ActionID := Copy(Memo1.Lines[i],10,length(Memo1.Lines[i])-9);
if copy(Memo1.Lines[i],1,14) ='ActionReasonID' then
x.ActionReasonID := Copy(Memo1.Lines[i],16,length(Memo1.Lines[i])-14);
if copy(Memo1.Lines[i],1,11) ='SPServiceID' then
x.ServiceID := Copy(Memo1.Lines[i],13,length(Memo1.Lines[i])-11);
if copy(Memo1.Lines[i],1,10) ='AccessMode' then
x.AccessMode := Copy(Memo1.Lines[i],12,length(Memo1.Lines[i])-10);
if copy(Memo1.Lines[i],1,10) ='FeatureStr' then
begin
x.FeatureStr := Copy(Memo1.Lines[i],12,length(Memo1.Lines[i])-10);
x.OrderTime := TimeToStr(Time);
x.CancelTime := TimeToStr(Time);
Memo2.Lines.Add(x.FeeUser);
Memo2.Lines.Add(x.DestUser);
Memo2.Lines.Add(x.ActionID);
Memo2.Lines.Add(x.ActionReasonID);
Memo2.Lines.Add(x.ServiceID);
Memo2.Lines.Add(x.AccessMode);
Memo2.Lines.Add(x.FeatureStr);
Memo2.Lines.Add(x.OrderTime);
Memo2.Lines.Add(x.CancelTime);
Memo2.Lines.Add('----------------------------------------------');
end;
end;
button2.Enabled:=false;
button3.Enabled:=true;end;procedure TForm1.Button3Click(Sender: TObject);
var
i : integer;
x : Torderrelation;
begin
memo2.Clear;
button2.Enabled:=false;
i := 0;
query1.Active := true;
while i <= memo2.Lines.count-1 do
begin
x.FeeUser := memo2.Lines[i];
x.DestUser := memo2.Lines[i+1];
x.ActionID := memo2.Lines[i+2];
x.ActionReasonID := memo2.Lines[i+3];
x.ServiceID := memo2.Lines[i+4];
x.AccessMode := memo2.Lines[i+5];
x.FeatureStr := memo2.Lines[i+6];
x.OrderTime := memo2.Lines[i+7];
x.CancelTime:= memo2.Lines[i+8];
i := i+10;
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('insert into orderrelation values(:a,:b,:c,:d,:e,:f,:g,:h,:i)');
query1.ParamByName('a').AsString:=x.FeeUser;
query1.ParamByName('b').AsString:=x.DestUser;
query1.ParamByName('c').AsInteger:=strtoint(x.ActionID);
query1.ParamByName('d').AsInteger:=StrToInt(x.ActionReasonID);
query1.ParamByName('e').AsString:=x.ServiceID;
query1.ParamByName('f').AsInteger:=StrToInt(x.AccessMode);
query1.ParamByName('g').AsString:=x.FeatureStr;
query1.ParamByName('h').AsString:=x.OrderTime;
query1.ParamByName('i').AsString:=x.CancelTime;
//end;
query1.ExecSQL;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
button2.Enabled:=false;
button3.Enabled:=false;
end;end.现在包里面的数据已经读出来了,但是写不到
数据库,希望老大指点一下
解决方案 »
- 有关游戏杆编程的问题(100分)在线等候
- 如何把bmp放到在DLL里,如何在编程时把它调用出来?
- >>如何随意修改ClientDataSet中几笔数据(即多条纪录),然后一次提交?
- 求解一数据过滤算法。
- 购买服装业ERP软件源码
- 请教一个有关登陆的问题
- 菜鸟问题:如何往ADODataset添加TStringfield?
- 怎樣把DELPHI報表(*.QRP),轉換轉成Word或Execl格式文件
- 我的MIDAS程序,本机可以,客户程序拷到另外机器上就不行了! 我爱你们!!!
- 拖了一个世纪的问题!!!访问中国软件时出现“找不到服务器”错误!系统重装也不行!
- 在以下代码中,IP_MULTICAST_TTL的含义是什么?各个取值代表什么?
- 求:本文文件分拆传送方法
你说清楚你问题啊
是哪里写不进去
出了什么异常?
你确定已经读出来了(测试过?)一眼看不出问题
我不可能打开delphi执行你的代码啊
这里你把你的字段名称补完整看看如何?
意思就是'insert into orderrelation(字段1,字段2,字段3......) values(:a,:b,:c,:d,:e,:f,:g,:h,:i)’