我用ado连接数据库,怎么取得所联数据库中table的个数,好像没有直接的属性吧??
试过先取得adoconnection的tableNames,然后计算里面的name个数,不成功阿
试过先取得adoconnection的tableNames,然后计算里面的name个数,不成功阿
解决方案 »
- 如何用sql语句查询出系统时间now的前1个月的相符数据?
- 疑难啊
- delphi 连接VFP
- 怎么激活隐藏窗体。
- 100分打听一下 - 有谁知道quickreport 打印设置为何不起作用。
- 关于检查sql表是否有数据更新
- DELPHI新手的小问题,数据库操作相关
- 关于显示这样效果的问题
- 如何判断一个动态的定义对象是否存在呢
- Delphi封装的线程对象,如何同步线程,其中有我用CreateOLEObject创建的ADO对象和系统的全局变量???如何同步???
- mid子窗口的排列与调用,即把已经存在的10个mid子窗口之中一个调到最前面来,怎么写?
- 如何直接更新ADOQUERY中的某一个表的内容?
var
SL: TStrings;
begin
SL := TStringList.Create;
try
ADOConnection1.GetTableNames(SL, False);
ShowMessage(IntToStr(SL.Count));
finally
SL.Free;
end;end;
begin
with Adoquery1 do
begin
Close;
SQL.Clear;
SQL.Add('select count(1) from sysobjects ');
Open;
ShowMessage(IntToStr(Fields[0].AsInteger));
Close;
end;
end;
begin
with Adoquery1 do
begin
Close;
SQL.Clear;
SQL.Add('select count(1) from sysobjects where type=''u''');
Open;
ShowMessage(IntToStr(Fields[0].AsInteger));
Close;
end;
end;
begin
with Adoquery1 do
begin
Close;
SQL.Clear;
SQL.Add('select count(1) from sysobjects where type=''u''');
Open;
ShowMessage(IntToStr(Fields[0].AsInteger));
Close;
end;
end;
PS:
TYPE=‘U’是指用户创建的表
procedure TForm1.FormCreate(Sender: TObject);
var
tl:Tstrings;
begin
self.ADOConnection1.GetTableNames(tl);
showmessage(inttostr(tl.Count));
end;