以下方法行不通,提示...Missing connection or connectionstring...procedure TForm1.Button1Click(Sender: TObject);
var
F:TextFile;
StateName:string[20];
CapitalName:string[20];
begin
if opendialog1.Execute then
begin
ADOQuery1.Open;
AssignFile(F, OpenDialog1.FileName);
Reset(F);
try
while not Eof(F) do
begin
Readln(F,StateName,CapitalName);
ADOQuery1.Insert;
ADOQuery1.FieldByName('A').AsString:=StateName;
ADOQuery1.FieldByName('B').AsString:=CapitalName;
ADOQuery1.Post;
end;
finally
CloseFile(F);
end;
end;
var
F:TextFile;
StateName:string[20];
CapitalName:string[20];
begin
if opendialog1.Execute then
begin
ADOQuery1.Open;
AssignFile(F, OpenDialog1.FileName);
Reset(F);
try
while not Eof(F) do
begin
Readln(F,StateName,CapitalName);
ADOQuery1.Insert;
ADOQuery1.FieldByName('A').AsString:=StateName;
ADOQuery1.FieldByName('B').AsString:=CapitalName;
ADOQuery1.Post;
end;
finally
CloseFile(F);
end;
end;
这样是错误的var
F:TextFile;
StateName:string[20];
CapitalName:string[20];
s:string;
begin
if opendialog1.Execute then
begin
ADOQuery1.Open;
AssignFile(F, OpenDialog1.FileName);
Reset(F);
try
while not Eof(F) do
begin
Readln(F,S);
//解析s,把s的字串分别弄出来给StateName 和 CapitalName
//......
ADOQuery1.Insert;
ADOQuery1.FieldByName('A').AsString:=StateName;
ADOQuery1.FieldByName('B').AsString:=CapitalName;
ADOQuery1.Post;
end;
finally
CloseFile(F);
end;
end;
你的ADOQuery没有连接上数据库
ADOQuery.ConnectingString := 'Provider=Microsoft.Jet.OLEDB.4.0;'
+ 'Data Source=%s;Persist Security Info=True;'
+ 'Jet OLEDB:Database Password=%s';
你好!如何解释S呢并把它赋给StateName 和 CapitalName?
function TForm1.SplitStr(Source: String): TStringList;
var
temp: String;
i: Integer;
begin
Result := TStringList.Create;
if Source='' then exit;
temp := Source;
i := Pos(',', Source);
if i > 0 then
begin
while i <> 0 do
begin
Result.Add(Copy(temp, 0, i - 1));
Delete(temp, 1, i);
i := Pos(',', temp);
end;
end;
Result.Add(temp);
end;
该函数返回的是TStringList类型,关键是如何把每个字段提取出来???