用什么方法好?(100分)

  • 主题发起人 主题发起人 warket
  • 开始时间 开始时间
W

warket

Unregistered / Unconfirmed
GUEST, unregistred user!
是这样的,有edit1,edit2....edit10 我想把这些数据通过 ADOQUERY 向数据库
传递,用ADOQUERY1.SQL.ADD(....EDIT1...)
ADOQUERY1.SQL.ADD(....EDIT2...)
...............................
ADOQUERY1.SQL.ADD(....EDIT3...)
这种方法不是很好,有没有其他的好方法?
 
for i:=1 to 10 do
begin
ADOQUERY1.SQL.ADD((form1.FindComponent(edit+inttostr(i)) as TEdit).Text);
end;
 
先用format 构建 sql 语句
format('insert into table values (%d,%s,%S.....)',[edit1.text .....]);

 
我想楼上的应该这样写:

ADOQUERY1.SQL.ADD((form1.FindComponent('edit'+inttostr(i)) as TEdit).Text);

别忘了2个 ‘ ’!

[:D]
 
用RECORDSET 好
 
用循环和格式化字符串都可以。
我喜欢用
chshanghai兄说的方法。很简单的。
 
chshanghai的也要写上10个edit,l_x_yuan用FindComponent则速度偏慢。
若要写上10个edit,那还不如用数组:
Aed:Array[1..10] of Tedit;
begin
Aed[1]:=edit1;Aed[2]:=edit2;......
for xh=1 to 10 do
SqlString:=...+Aed[xh].text+...;
AdoQuery1.Sql.Add(SqlString);
end;
 
多人接受答案了。
 
to the_lover
老兄 你也太厉害了吧 一句
>>用RECORDSET 好
就能得80分

 
后退
顶部