向一个表里插入多条记录(100分)

  • 主题发起人 caoyanjuan
  • 开始时间
C

caoyanjuan

Unregistered / Unconfirmed
GUEST, unregistred user!
向一个表里插入多条记录如:
tmpSql:='insert into sb00709 values(''210102'',2001-01-01,2001-12-31,3,4,5,6,7,''0'')';
tmpSql:=tmpSql + ';insert into sb00709 values(''210102'',2001-01-01,2001-12-31,33,4,5,6,7,''0'')';
AdoQuery1.Close;
AdoQuery1.SQL.Clear;
AdoQuery1.sql.Add(TmpSql);
AdoQuery1.ExecSQL;
哪里出错了?
 
看来你是使用Oracle!
为什么不分开来写呢,你的语法在SQL Plus里面也许是正确的,但是在Delphi里面就……
 
不要这样做啊,如果记录不多的话,
做个循环。
记录多,请看这个贴子
http://www.delphibbs.com/delphibbs/dispq.asp?lid=853039
 
变量和数据类型是不是相符,错误提示信息是什么
单独一句句试看有问题吗,在SQL的查询优化器里试试
 
你要的所有功能。
try
ADOConnection1.begin
Trans;
with AdoQuery1 do
begin
Close;
SQL.Text := 'insert into sb00709 values(''210102'',2001-01-01,2001-12-31,3,4,5,6,7,''0'')';
ExecSQL;
Close;
SQL.Text := 'insert into sb00709 values(''210102'',2001-01-01,2001-12-31,33,4,5,6,7,''0'')';
ExecSQL;
end;
ADOConnection1.CommitTrans;
except
if ADOConnection1.InTransaction then
ADOConnection1.RollbackTrans;
end;
 
要是有多条,写起来还是挺可观的!!
 
嘿,多条不会就使用循环,存放在StringList里面。
这样就OK了!
 

Similar threads

S
回复
0
查看
763
SUNSTONE的Delphi笔记
S
S
回复
0
查看
701
SUNSTONE的Delphi笔记
S
S
回复
0
查看
674
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
顶部