Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-08-2011
LIGERO LIGERO is offline
Miembro
 
Registrado: Jun 2007
Posts: 30
Poder: 0
LIGERO Va por buen camino
Conexion ADO en tiempo de ejecucion

Buenas amigos.

Tengo SQL Server 2008 R2 express instalado y estoy realizando un programa que tienes que ejecutarse en varios ordenadores.
El programa debe acceder a la base de datos del servidor y para ello me gustaría poder hacer un formulario que cuando se ejecute el pregrama por primera vez acceda a los servidores SQL y los muestre en una lista y luego pida el usuario y el password.

He visto algo con Sql-DMO pero en esta versión de Sql no está incluido.

¿Como puedo hacerlo?

Muchas gracias
Responder Con Cita
  #2  
Antiguo 26-08-2011
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: Apr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.676
Poder: 12
Chris Va por buen camino
En qué realmente estás teniendo problemas? En iniciar sesión con la cuenta de usuario o en listar los servidores SQL Servers disponibles en tu red de área local?

Saludos,
Chris
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
  #3  
Antiguo 26-08-2011
LIGERO LIGERO is offline
Miembro
 
Registrado: Jun 2007
Posts: 30
Poder: 0
LIGERO Va por buen camino
Bueno, ya no tengo problema.
Encontré esta función y con un poquito de código mas, puedo acceder a los servidores SQL server que tengo instalados en mi red.

Código:
procedure ListAvailableSQLServers(Names : TStrings);
var
  RSCon                    : ADORecordsetConstruction;
  Rowset                   : IRowset;
  SourcesRowset            : ISourcesRowset;
  SourcesRecordset         : _Recordset;
  SourcesName, SourcesType : TField;
begin
  OleCheck(CoCreateInstance(CLASS_Recordset, nil, CLSCTX_INPROC_SERVER or
                            CLSCTX_LOCAL_SERVER, IUnknown, SourcesRecordset) );
  RSCon := SourcesRecordset as ADORecordsetConstruction;
  SourcesRowset := CreateComObject(ProgIDToClassID('SQLOLEDB Enumerator'))
                   as ISourcesRowset;
  OleCheck(SourcesRowset.GetSourcesRowset(nil, IRowset, 0, nil, IUnknown(Rowset)));
  RSCon.Rowset := RowSet;
  with TADODataSet.Create(nil) do
  try
    Recordset := SourcesRecordset;
    SourcesName := FieldByName('SOURCES_NAME'); { do not localize }
    SourcesType := FieldByName('SOURCES_TYPE'); { do not localize }
    Names.BeginUpdate;
      try
        while not EOF do
        begin
          if (  (SourcesType.AsInteger = DBSOURCETYPE_DATASOURCE) and
                (SourcesName.AsString <> '')
             )
          then
            Names.Add(SourcesName.AsString);
          Next;
        end;
      finally
        Names.EndUpdate;
     end;
  finally
    Free;
  end;
end;
Muchas gracias a todos y espero que os pueda servir a algunos.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Conexión DBExpress en tiempo de ejecución pache Conexión con bases de datos 0 10-05-2007 18:32:46
Intentar conexion FB en tiempo de ejecución taita Firebird e Interbase 4 30-11-2005 23:00:45
Conexion a Acces via Ado en tiempo de ejecución mgaray Conexión con bases de datos 0 13-11-2004 00:46:28
Error en conexión en tiempo de ejecución !! Lester Conexión con bases de datos 8 12-06-2003 22:46:04
Conexión en tiempo de ejecución con DBExpress Ana Conexión con bases de datos 3 04-06-2003 13:10:37


La franja horaria es GMT +2. Ahora son las 09:13:07.


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