如何取得SQL数据库的全部实例名?delphi版本

第一步,在实例master库中建立存储过程如下:

CREATE PROCEDURE query_database AS

Select name from sysdatabases

GO

第二步,打开delphi,在窗体上放置控件, TADOconnection, TADOstoredproc, TcomboBox,

第三步,设置Connection的连接字符串为:Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=master;Data Source=VSYS-TESTW;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=VSYS-TESTW;Use Encryption for Data=False;Tag with column collation when possible=False

第四步,设置storedproc的connection为第三步的那个控件,storedproc属性为第一步建立的存储过程的过程名。

第五步,添加代码如下:

procedure TForm1.FormCreate(Sender: TObject);

var

ss:string;

begin

ADOStoredProc1.Open;

while not ADOStoredProc1.Eof do

begin

ss:=ADOStoredProc1.Fields[0].AsString;

ComboBox1.Items.Add(ss);

ADOStoredProc1.Next;

end;

end;

Ok, 运行程序,点击下拉组合框,就可以看到效果啦。