刪除DataModule裡, 某table所有的資料所出現的錯誤 |
答題得分者是:hagar
|
361002
一般會員 發表:7 回覆:18 積分:5 註冊:2003-04-10 發送簡訊給我 |
請問要如何刪除某個DataModule裡, 某table所有的資料???
我用下列語法, 會出現錯誤, 可否幫我看一下問題出在那裡???
=================
在程式中, 呼叫 --> deleteTable(dmLoader.ADOTableFBMRFF); procedure TfLogin.deleteTable(tb:TAdoTable);
var
len : integer;
begin
with tb do
begin
len := RecordCount;
while RecordCount > 0 do
Delete;
end;
end; 會出現, 鍵值欄位資訊不足, 影響太多列的錯誤!
|
ha0009
版主 發表:16 回覆:507 積分:639 註冊:2002-03-16 發送簡訊給我 |
你好:
直接使用 SQL 操作刪除的動作比較有效率也不易出錯。
下面的 Code 你參考看看 < class="code">
procedure deleteTable(tb:TAdoTable);
Const
SQL = 'Delete From %s';
var
adoQ : TAdoQuery;
begin
if tb.Connection = nil then system.Exit;
adoQ := TAdoQuery.Create (Nil);
try
adoQ.Connection := tb.Connection;
adoQ.SQL.Text := format (SQL, [tb.TableName]);
adoQ.ExecSQL;
tb.Close;
tb.Open;
finally
FreeAndNil (adoQ);
end;
end; procedure TForm1.Button1Click(Sender: TObject);
begin
deleteTable (ADOTable1);
end;
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
361002
一般會員 發表:7 回覆:18 積分:5 註冊:2003-04-10 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
361002
一般會員 發表:7 回覆:18 積分:5 註冊:2003-04-10 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |