adotable的open dataset或close dataset的问题。请求帮助

Lynn_8 2006-04-16 07:53:23
窗口中的dbgrid中已经显示model表格,我
想在按下button2时,显示model_1表格。以下是代码:
adotable1.Open; //运行的时候警告:cannot perform this operation on an open dataset.
//我试过改成close,但运行时警告:
cannot perform this operation on an closed dataset.
ADOTable1.TableName:='model_1';//能在dbgrid中显示这张表格。不知道这样改是不是对。
ADOTable1.Active:=True;

...全文
204 4 点赞 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
alpsgem 2006-04-21
唉呀,丢人了,不好意思,这回这个是没错的

下面这个例子是演示了从数据库中提取全部的表名并一一访问各个表查询到每个
表的表名和记录数并存入另外一个表Table1
procedure TForm1.Button1Click(Sender: TObject);
var
SL: TStrings;
index: Integer;
begin
//创建一个列表实例作为GetTableNames的参数用
SL := TStringList.Create;
try
ADOConnection1.GetTableNames(SL, False);
for index := 0 to (SL.Count - 1) do begin
Table1.Insert; //插入一条新记录
//取得表名
Table1.FieldByName('Name').AsString := SL[index];
if ADOTable1.Active then ADOTable1.Close;
//准备打开指定的表
ADOTable1.TableName := SL[index];
ADOTable1.Open;
//取得记录总数
Table1.FieldByName('Records').AsInteger := ADOTable1.RecordCount;
//提交并保存记录
Table1.Post;
end;
finally
SL.Free;
ADOTable1.Close;
end;
end;
呵呵,确是初学,万望见谅
  • 打赏
  • 举报
回复
dabaicai 2006-04-18
晕倒,alpsgem() 刚学编程吧,close了不就是Active=False了吗,open不就是Active=true了吗
  • 打赏
  • 举报
回复
alpsgem 2006-04-18
open的时候是不能作修改的。一上来active应该是false,然后close,修改完再open,最后active置true
  • 打赏
  • 举报
回复
dabaicai 2006-04-17
adotable1.close;
adotable1.tablename := 'model_1';
adotable1.open;
  • 打赏
  • 举报
回复
相关推荐
发帖
语言基础/算法/系统设计
加入

1.6w+

社区成员

Delphi 语言基础/算法/系统设计
申请成为版主
帖子事件
创建了帖子
2006-04-16 07:53
社区公告
暂无公告