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;

...全文
259 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
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;

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧