只是传送表的列表不用这么麻烦吧。看下面的代码:
procedure TDynamicSQLDemoServer.GetAllTables(var vTables: string);
var
tblList :TStringList;
iCount : Integer;
begin
try
tblList:=TStringList.Create;
adocSQL.GetTableNames(tblList);
vTables := tblList.CommaText;
finally
tblList.Free;
end;
end;procedure TForm3.Button1Click(Sender: TObject);//点击此按钮时读出SQL Server中Pubs数据库的所有表名
var
vtblList:string;
iCount:integer;
begin
socketconnection1.Connected :=true;
socketconnection1.appserver.GetAllTables(vtblList);
dblistbox1.Items.CommaText := vtblList;
end;
procedure TDynamicSQLDemoServer.GetAllTables(var vTables: string);
var
tblList :TStringList;
iCount : Integer;
begin
try
tblList:=TStringList.Create;
adocSQL.GetTableNames(tblList);
vTables := tblList.CommaText;
finally
tblList.Free;
end;
end;procedure TForm3.Button1Click(Sender: TObject);//点击此按钮时读出SQL Server中Pubs数据库的所有表名
var
vtblList:string;
iCount:integer;
begin
socketconnection1.Connected :=true;
socketconnection1.appserver.GetAllTables(vtblList);
dblistbox1.Items.CommaText := vtblList;
end;
解决方案 »
- 两个PCHAR相减得到什么?
- TIDHttp 用法请教
- 请教一个动态数组的问题~~~~
- 对Raize组件熟悉的大侠帮帮忙啊
- 我开始学Delphi,遇到一个问题:如何检测在文本框中的输入为数字呢?请大虾帮帮!!!
- 如何记录、释放TForm??
- 吐血,一个基于ISAPI的Web Server Application的查询数据库程序不知哪里出错?
- ****几个问题,解决马上给分******
- 我有一个问题。
- [求助]如何判断一个MDI窗体是否创建?
- 请问这句 select opId from (select * from tbBmsLog) 有什么问题???急!!
- 如何使用API中的ping功能?最好给个例子!谢谢
go
select name from sysobjects where type='u'
在线等待高手!
调整type可以得到所有的sql server的对象的
select name from sysobjects where type='u'
type='u'表示用户表,type='s'表示系统表
或者
execute sp_tables
取得比较全面一些
procedure TForm3.Button1Click(Sender: TObject);//点击此按钮时读出SQL Server中Pubs数据库的所有表名
var
vtblList:OleVariant;
iCount:integer;
begin
socketconnection1.Connected :=true;
socketconnection1.appserver.GetAllTables(vtblList);
dbListBox1.Items.AddStrings(vtblList);
end;其中GetAllTables方法的代码是:
procedure TDynamicSQLDemoServer.GetAllTables(var vTables: OleVariant);
var
tblList :TStringList;
iCount : Integer;
begin
try
tblList:=TStringList.Create;
adocSQL.GetTableNames(tblList);
vTables:=vtblList;
finally
tblList.Free;
end;
end;
vTables:=vtblList;//把得到的值付给返回的参数
而tblList是TstringList,我试了提示说两个类型不匹配啊?
这一句改为这样试试:
vTables:=tblList.Text;
是你的变量申明有问题!
中大费力啊。
(假如pubs是你的数据库,以下返回pubs中所有的用户表,表名在Table_Name字段中)sp_tables null, dbo, pubs, "'TABLE'"