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)
-   -   Conectar sql server (https://www.clubdelphi.com/foros/showthread.php?t=74184)

antigrondona 03-06-2011 17:32:49

Conectar sql server
 
Hola gente. Estoy por hacer un sistema y necesito hacerlo con sql server; la idea es instalar el gestor en una pc servidora y que la aplicación corra en pcs cliente. Como para probar, quise hacer una conexion manual con un ado y al configurarlo ma rebota con el usuario y contraseña. Le di la ruta de la BD en una pc de la red pero hay un problema con la autenticacion de windows. SQL en el servidor lo instale con autenticacion de windows y el servidor local.
En fin, el servidor funciona, lo he probado pero al conectar de una pc cliente con el ado me da error de autenticacion.
Alguna ayuda? Por otra parte, me gustaria crear la conexion por codigo como para darle la ruta del servidor como parametro.
Gracias!

oscarac 03-06-2011 17:47:51

podrias colocar algo del codigo que tienes?
quiza la cadena de coexion?

antigrondona 03-06-2011 17:52:41

No la he hecho por código la conexion, simplemente para probarla coloqué un ado y en la prop connection string, ahi me rebota el usuario.

oscarac 03-06-2011 17:54:21

entonces coloca el string de conexion que esta en el componente

solo dices te rebota...
te aparece alguna mensaje?

antigrondona 03-06-2011 18:02:35

Es que allí está el error, el string se configura con un cuado de dialogo, en proveedor seleccione ole for sql server y en conexion seleccione el servidor, de la lista de servidores, en nombre del archivo indique la ruta de la bd en el servidor, pero en inicio de sesion de servidor selecciono usar atentificacion de windows y ahi es donde me dice que no se puede conectar por no ser una cuenta de usuario valida.

luisgutierrezb 03-06-2011 19:22:18

Existe en la pc del sql server una cuenta igual a la que usa el cliente? estan en el mismo grupo de trabajo?, generalmente eso es lo que falla, yo te recomiendo que actives el usuario sa del sql server y trabajes con el y bueno creando las cuentas que necesites, generalmente es lo que menos configuración necesta

antigrondona 03-06-2011 20:52:30

Cita:

Empezado por luisgutierrezb (Mensaje 402501)
Existe en la pc del sql server una cuenta igual a la que usa el cliente? estan en el mismo grupo de trabajo?, generalmente eso es lo que falla, yo te recomiendo que actives el usuario sa del sql server y trabajes con el y bueno creando las cuentas que necesites, generalmente es lo que menos configuración necesta

No se che, estoy dispuesto a comenzar de cero. Qué pasos debería seguir?

oscarac 03-06-2011 20:56:46

mmm
empieza colocando la candea de conexion o el string de las conexion

antigrondona 03-06-2011 21:31:08

Quizás esté cometiendo un error grave. Obviemos el servidor, la conexion y su configuracion; la pc cliente que intenta conectarse al servidor debe tener instalado el gestor de base de datos tambien?
Estoy intentando desde una pc cliente sin el sql instalado, que debe acceder al servidor. Se me ocurre que este puede ser el problema.

maeyanes 03-06-2011 21:49:14

Hola...

No es necesario que la PC cliente tenga instalado el servidor de bases de datos, solo necesitas instalar el cliente de SQL Server.


Saludos...

oscarac 03-06-2011 21:51:20

y por quincuagesima nonantengesima vez

coloca la cadena de conexion

luisgutierrezb 03-06-2011 21:52:16

En usuarios de SQL creas el usuario y por ahi trae lo de utilizar el usuario "sa" lo activas y listo desde la cadena de conexion pones usuario y contraseña y ya

antigrondona 03-06-2011 22:06:04

Cita:

Empezado por oscarac (Mensaje 402517)
y por quincuagesima nonantengesima vez

coloca la cadena de conexion

Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=usuario;Data Source=CABJ;Initial File Name=\\Cabj\datos (e)\Sistemas\Sistemas de Informacion 2\Tarjeta Bahiense SA\Aplicativo\v9\BD\datos.mdf

ahó está la bendita cadena; insisto, el problema es la autenticación

oscarac 03-06-2011 22:17:11

Cita:

Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=FEBAN;Data Source=FBSV10006
Esta es la cadena de conexion del sistema que manejamos aqui

FEBAN = Base de Datos
FBSV10006 = Servidor

intenta colocar la misma cadena (con las modificaciones correspondientes) a ver que te sale

Neftali [Germán.Estévez] 04-06-2011 17:19:18

Cita:

Empezado por antigrondona (Mensaje 402522)
Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=usuario;Data Source=CABJ;Initial File Name=\\Cabj\datos (e)\Sistemas\Sistemas de Informacion 2\Tarjeta Bahiense SA\Aplicativo\v9\BD\datos.mdf

ahó está la bendita cadena; insisto, el problema es la autenticación

Me suena raro que tengas que poner en fichero MDF.
En las conexiones con SQLServer se indica, USER, PASSWORD(si es necesario), SERVIDOR y DATABASENAME (nombre, no path).

antigrondona 04-06-2011 22:34:44

Gente empiezo de nuevo. Olvido por un momento la conexion desde delphi, he probado conectar el ado con delphi en el servidor y funciona, es asi que llegué a la conclusion, y de hecho lo comprobé, que no puedo lograr la conexion entre 2 pc en el propio gestor de BD SQL.
Centrandome en sql y olvidando delphi, instale sql server en una pc que va a funcionar de servidor y seleccione la opcion de autenticacion de windows; y lo mismo he hecho en una notebook que va a funcionar como cliente. Seguramente me cuestionaran por que selecciono la autenticacion de windows, sencillamente es la única manera en que puedo lograr conexion local en cada caso (olvidandonos la conexion remota que es la que me interesa) dado que las pc servidor y cliente no tienen cuenta de usuario, simplemente arrancan con la cuenta por defecto.
Una vez esto, cada instalacion en cada caso (servidor y cliente), ambas conexiones locales funcionan indeptes entre si.
El problema del millon es que cdo en la cliente adjunto el servidor de la pc que hace las veces de servidor remoto, ahi es donde me da error de conexion. Ese es mi problema a resolver.

Diego666 05-06-2011 20:37:47

existen muchas maneras la mas sencilla es Ponle la misma contrasena al sa y configura el servidor enlazado desde el sql managment o bien

sp_addlinkedserver [ @server= ] 'server' [ , [ @srvproduct= ] 'product_name' ] [ , [ @provider= ] 'provider_name' ] [ , [ @datasrc= ] 'data_source' ] [ , [ @location= ] 'location' ] [ , [ @provstr= ] 'provider_string' ] [ , [ @catalog= ] 'catalog' ]

Saludos!!!

antigrondona 07-06-2011 15:30:00

Gente solucioné el problema.
Simplemente, antes de largase a la aplicación hay que configurar correctamente el gestor de BD en el servidor, sencillamente, en el administrador corporativo hay que asignar cuentas de usuario a la base de datos, y listo, ahi se utiliza esta cuenta al crear la cadena de conexion en delphi.
Asi que ya estoy en curso, lo único que me queda es chequear la conexion, que al conectar me devuelva si está o no OK, estuve buscando y creo que la propiedad state del adoconnection debería darme esa información, pero no sé cuáles son los valores que puede asumir.
Espero que me ayuden con esta parte, a´si queda impecable.
Gracias!


La franja horaria es GMT +2. Ahora son las 03:21:00.

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