clientdataset 作迴圈 INSERT 資料庫的問題 |
尚未結案
|
isthatu
初階會員 發表:80 回覆:47 積分:25 註冊:2002-06-26 發送簡訊給我 |
請問各位一個問題 我有下列一段程式
利用三層方式 作資料逐筆增加
元件用clientdataset ------------------------------------------
VAR
I:integer;
begin
I:=1;
repeat
with clientdataset do begin
close;
commandtext:='insert tablename (A,B,C) values(:A,:B,:C)';
cdsffseqmentvalue.Params.ParamByName('A').AsString:='AA';
cdsffseqmentvalue.Params.ParamByName('B').AsString:='BB';
cdsffseqmentvalue.Params.ParamByName('C').AsString:=inttostr(i);
Execute;
inc(i);
inc(OO) ;
end;
UNTIL OO=XX ; ------------------------------------------ 結果資料出來 在C欄位為
1
33571797
33571797
33571797 -------------------------------------
正常C欄位 應該隨I值 逐筆遞增
1
2
3
4
.... ---------------------------------------
但迴圈第二次時 I值就跑掉了 變成3357197
當我改成ADOQUERY時 同樣的方法
I值則正常遞增 WHY ?
-------------------------------------- BCDEFHIJKLMNOPQRSTUVWXZ
------
BCDEFHIJKLMNOPQRSTUVWXZ |
reebokmonkey
一般會員 發表:44 回覆:73 積分:23 註冊:2003-08-06 發送簡訊給我 |
|
isthatu
初階會員 發表:80 回覆:47 積分:25 註冊:2002-06-26 發送簡訊給我 |
引言: cdsffseqmentvalue.Params.ParamByName('C').AsString:=inttostr(i); 改为 cdsffseqmentvalue.Params.ParamByName('C').AsInteger:=i; 试一试 發表人 - reebokmonkey 於 2003/08/28 16:15:42一樣! 就是很奇怪 我只好將原件先改成ADO......試了正常 程式沒變! BCDEFHIJKLMNOPQRSTUVWXZ
------
BCDEFHIJKLMNOPQRSTUVWXZ |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |