如何取的本地服务器中的数据别名(SQL) 我想取的本地服务器,或其他服务器的数据别名,我是个程序初学者,我想写一个动态连接数据库。可是我不知道该如何取数据库别名。请各位大虾指点一下,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.得出远端数据库服务器上的所有数据库名称,在adoquery中sql语句用 exec sp_databases就可以了2.获得所有表的名称用在adoquery中sql语句用 exec sp_tables就可以了 procedure TfrmSetupDataBase.FormCreate(Sender: TObject);var SQLserver,serverlist:variant; i: integer;begin edServerName.Items.Clear; try SQLserver:=CreateOleObject('SQLDMO.application'); serverlist:=SQLserver.ListAvailableSQLServers; for i:=1 to serverlist.count do edServerName.items.Add(serverlist.item(i)); SQLServer := NULL; serverList := NULL; except application.MessageBox('您当前的机器没有安装SQL Server,无法导入SQL Server服务器列表,'+ #13+#10+'请直接输入SQL Server服务器名称!','信息提示',MB_OK+MB_ICONINFORMATION); end; edServerName.text:=trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','Dbservername')); edLgnId.text:=trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','LoginId')); edPwd.text:=trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','LoginPwd')); edDataBase.text:=trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','DataBaseName')); if trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','TimeOut'))='' then edTimeOut.text:='15' else try edTimeOut.text:=trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','TimeOut')); except edTimeOut.text:='15'; end; 小陶!!!可不可把比较完整的代码发给我。E_MAIL:[email protected] 連到Master數據庫後, 用Select * from Sysdatabases就可以啦 太奇怪了执行CreateOleObject('Word.Application'),异常抛出:无效的类别字符串 怎么捕获DBGridEh1的浮点错误呢? 游戏中呼出窗体问题 DELPHI多国语言版 请教高手:关于clientdataset的问题? ◆★大家一般使用xp风格的控件是什么,请推荐一两套,up者有分★◆ 请问各位大侠:如何在delphi中实现窗口得四个边角为圆弧形? 如何取得宽带上网的IP地址,解决给分,在线..... 关于用idhttp模拟投票的出错问题. 哪位高手开发过类似简历的制表软件? 如何导入CSV文件 TBITMAP、tgifimage释放的问题?
exec sp_databases就可以了
2.获得所有表的名称用在adoquery中sql语句用
exec sp_tables就可以了
var SQLserver,serverlist:variant;
i: integer;
begin
edServerName.Items.Clear;
try
SQLserver:=CreateOleObject('SQLDMO.application');
serverlist:=SQLserver.ListAvailableSQLServers;
for i:=1 to serverlist.count do
edServerName.items.Add(serverlist.item(i));
SQLServer := NULL;
serverList := NULL;
except
application.MessageBox('您当前的机器没有安装SQL Server,无法导入SQL Server服务器列表,'+
#13+#10+'请直接输入SQL Server服务器名称!','信息提示',MB_OK+MB_ICONINFORMATION);
end;
edServerName.text:=trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','Dbservername'));
edLgnId.text:=trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','LoginId'));
edPwd.text:=trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','LoginPwd'));
edDataBase.text:=trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','DataBaseName'));
if trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','TimeOut'))='' then
edTimeOut.text:='15'
else
try
edTimeOut.text:=trim(ReadRegisty('\SOFTWARE\'+pgname+'\clientset','TimeOut'));
except
edTimeOut.text:='15';
end;