Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Obtener listado de instancias (server) de sql server desde delphi (https://www.clubdelphi.com/foros/showthread.php?t=96572)

ZiriusB 25-01-2024 20:35:04

Obtener listado de instancias (server) de sql server desde delphi
 
Buenas tardes, antemano decir que ya busque por el foro y no encontré algo similar a lo que estoy consultando. La idea es la siguiente, quiero tener un formulario de "conexión" que el mismo usuario pueda configurar de manera fácil. En este form quiero que el usuario al hacer clic en un Boton obtenga en nombre de la instancia sql server, pueda seleccionar la base de datos y aceptar, todo esto para guardarlo en un archivo .ini. esto lo haría solo la primera vez que este usando el sistema.

Ahora mismo tengo algo así: el usuario coloca el nombre del server XXXXXX\SQLEXPRESS nombre de usuario SA y contraseña, da click a conectar y eso le conecta la base de datos que tendría que escoger, lo que quiero es simplificar eso y que el usuario al hacer clic se le muestre la lista o la instancia sql server y que pueda conectar sin tener que escribir...

Saludos.

Neftali [Germán.Estévez] 26-01-2024 09:20:36

¿Qué componentes de conexión estás utilizando?
Si está utilizando ADO, puedes aprovechar el Wizard del que dispone ADO, que es el mismo que aparece en el IDE.
En ese Wizard hay una opción que ya te busca los servidores SQL.






Código Delphi [-]
uses
  ADODB;

procedure TForm3.Button1Click(Sender: TObject);
begin
  var ActualConnectString: string;
  var MyConnectNewString := PromptDataSource (0, ActualConnectString);
end;

MAXIUM 26-01-2024 18:06:39

Las instancias las puedes obtener desde el registro de Windows

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server
InstalledInstances

Obviamente solo te sirve si está SQL Server en el mismo equipo.

ZiriusB 26-01-2024 19:13:54

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 554164)
¿Qué componentes de conexión estás utilizando?
Si está utilizando ADO, puedes aprovechar el Wizard del que dispone ADO, que es el mismo que aparece en el IDE.
En ese Wizard hay una opción que ya te busca los servidores SQL.






Código Delphi [-]
uses
  ADODB;

procedure TForm3.Button1Click(Sender: TObject);
begin
  var ActualConnectString: string;
  var MyConnectNewString := PromptDataSource (0, ActualConnectString);
end;

Gracias por responder compañero (USO ADOConection), actualmente uso mis sistemas con un archivo config donde guardo SERVER, NOMBRE DE BD entre otros parámetros. mi consulta es la siguiente:

Supongamos que un cliente me compra un sistema, se lo envío, instalo sql server, quiero que el mismo cliente pueda entrar al sistema y que aparezca un formulario que contenga: SERVER y BD y que el mismo pueda obtener esos datos al hacer click en un OBTENER, luego clic en GUARDAR y que me guarde en el archivo config o .ini esos datos para que ya quede configurado el sistema con el server y la BD.

Tengo el .ini ya, incluso lo puedo configurar yo mismo con los datos de conexión sin problemas, lo que quiero es que el mismo cliente pueda hacer eso desde el mismo sistema (una única vez cuando el sistema no este configurado previamente).


La franja horaria es GMT +2. Ahora son las 09:34:12.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi