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 Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-12-2005
[Nbull] Nbull is offline
Miembro Premium
 
Registrado: nov 2004
Ubicación: Valencia-España
Posts: 168
Poder: 20
Nbull Va por buen camino
Question Conexión ODBC sin que pida password del servidor

Hola, tengo una aplicación terminada en Delphi 7 conectada a access a traves de un AdoConnection la conexión la hago a traves de ODBC, y la base de datos esta en un servidor, hasta hay todo bien, el problema viene cuando tengo que logarme en el servidor para poder usar mi aplicación.

En el apartado que pone "Escriba la información para iniciar sesion en el servidor" del Adoconection he puesto la contraseña del servidor y el nombre de usuario y le he permitido guardar contraseña.

Pruebo la conexión y se conecta,pero, si reinicio el equipo he de logarme antes en el servidor para que mi aplicación funcione, sino me dice que esta abierta en modo exclusivo o no tengo permisos para ver los datos.

El servidor es un Nt.

Cual puede ser la solución por que, lo que yo quiero es que los usuarios accedan a la base de datos sin poner la contraseña del administrador.

Un saludo y gracias por vuestra ayuda.
Responder Con Cita
  #2  
Antiguo 27-12-2005
Avatar de cyrux22
cyrux22 cyrux22 is offline
Registrado
 
Registrado: dic 2005
Posts: 4
Poder: 0
cyrux22 Va por buen camino
Hola, no se si esto resuelva concretamente tu situación pero fijate que en el ADOConnection tenes una propiedad llamada "LoginPrompt" que por defecto viene como TRUE si la pones en FALSE no aparece el cuadrito pidiendo user y pass.
Responder Con Cita
  #3  
Antiguo 27-12-2005
[Nbull] Nbull is offline
Miembro Premium
 
Registrado: nov 2004
Ubicación: Valencia-España
Posts: 168
Poder: 20
Nbull Va por buen camino
Gracias Cyrux22,pero, el loginPrompt que tu dices es para logarte en la base de datos.
Lo que a mi me pasa, es que cuando arranco mi aplicación el servidor no me deja acceder a la base de datos, hasta que este logueado en el, espero haber aclarado un poco mejor la cuestión.

De todas formas gracias Cyrux22.

Un saludo.

Última edición por Nbull fecha: 27-12-2005 a las 13:02:07.
Responder Con Cita
  #4  
Antiguo 30-12-2005
Chocoslovaco Chocoslovaco is offline
Miembro
 
Registrado: jun 2005
Ubicación: Puebla, México
Posts: 66
Poder: 19
Chocoslovaco Va por buen camino
podria ser...

solo por contestar al vuelo..
segun lo que dices, al ser un servidor NT, creo que en la(s) maquina(s) donde tu aplicación correrá, debes generar un usuario local que tenga permisos de lectura/escritura, sobre la base de datos o carpeta compartida y de igual forma este usuario debe existir en el dominio del en el servidor.

Sino en todo caso podrias probar conectar a la base de datos con la
propiedad ConnectioString.

Ojalá te sirva de algo el comentario.

Un saludo

Oswaldo Jr
__________________
Todos quieren cambiar el mundo, pero nadie piensa en cambiarse así mismo
Responder Con Cita
  #5  
Antiguo 03-01-2006
[Nbull] Nbull is offline
Miembro Premium
 
Registrado: nov 2004
Ubicación: Valencia-España
Posts: 168
Poder: 20
Nbull Va por buen camino
Hola Chocoslovaco, gracias por tu respuesta,pero, no solucione el problema, la conexion a la base de datos la hago con un AdoConnection a traves de ODBC, le doy la ruta del servidor donde se aloja la base de datos Access, y le pongo tambien la contraseña del servidor para que no se la pida al usuario, dado que el usuario no debe saber la contraseña.

Todo esto funciona, se conecta y mi aplicación funciona bien, pero, el problema es que tengo que ir a la carpeta redes buscar la maquina servidor pincharle y entrar la contraseña, por que sino no me conecta.

Mi compañero, me ha dicho que el servidor es un NT y solo tiene licencia para nueve conexiones, y que casi todas estan ocupadas por aplicaciones "más importantes para la empresa" que la que yo he realizado(Aunque la mia no deja de serlo).

Como puedo hacer para conectarme al servidor sin que me pida la contraseña de este.Lo que el me ha comentado es que el ODBC del usuario tendria que llamar al alias de la base de datos del ODBC del servidor y que este se encargara de conectarse ya localmente con la base de datos.

No se si el ODBC funciona asi o si se puede hacer de otra manera para que mi aplicación no gaste todas las conexiones, ademas son más de nueve los usuarios que van a gastar mi aplicación.¿Como puedo solucionarlo?a ver si hay alguien que me pueda hechar un cable por que llevo dos semanas con esto y no soy capaz.

Un saludo forer@s.

PD: Feliz 2006 a tod@s y seguir asi que sois la mejor comunidad de internet.
Responder Con Cita
  #6  
Antiguo 03-01-2006
Chocoslovaco Chocoslovaco is offline
Miembro
 
Registrado: jun 2005
Ubicación: Puebla, México
Posts: 66
Poder: 19
Chocoslovaco Va por buen camino
Hola NBull, de igual forma Felicidades para ti.
Cita:
servidor es un NT y solo tiene licencia para nueve conexiones, y que casi todas estan ocupadas por aplicaciones
No Considero que este sea el problema de la No Conexión, puesto que el soportar 9 conexiones, no aplica para aplicaciones, sino para usuarios que se conecten al dominio. A reserva de que alguien me corrija.

Cita:
el problema es que tengo que ir a la carpeta redes buscar la maquina servidor pincharle y entrar la contraseña, por que sino no me conecta.
como te decia antes, intenta probar creando una conexion de red (persitentente) al equipo o recurso compartido, pues quiero pensar que tu base de datos esta en un recurso compartido(carpeta), y el usuario con el cual te conectas al servidor tenga los permisos sobre el recurso; por lo otro agrega un usuario a tu base de datos que tenga permisos para realizar los cambios que requieras, y deberia de funcionar.

Cita:
si se puede hacer de otra manera
Pues en lugar de usar ODBC, utiliza ADO, con sus correspondientes propiedades, ConnectionString para conectarte a la base de datos


Suerte.
Oswaldo Jr
__________________
Todos quieren cambiar el mundo, pero nadie piensa en cambiarse así mismo
Responder Con Cita
  #7  
Antiguo 10-01-2006
[Nbull] Nbull is offline
Miembro Premium
 
Registrado: nov 2004
Ubicación: Valencia-España
Posts: 168
Poder: 20
Nbull Va por buen camino
Gracias por responderme de nuevo Chocoslovaco, pero, mi problema persiste, tengo permisos para acceder a esa carpeta, y la base de datos esta en una carpeta compartida.

Uso componentes ADO, con connection string, pero en vez de usar Microsoft Jet estoy gastando ODBC. En la configuracion del AdoConnection Primero hay una ficha que pone Proveedor hay pongo Drivers ODBC luego viene otra ficha que pone Conexión hay pongo usar cadena de conexión con la siguiente cadena:
Código:
DBQ=Z:\cintas.mdb;DefaultDir=Z:\;Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;
FILEDSN=C:\Archivos de programa\Archivos comunes\ODBC\Data Sources\cintas.dsn;MaxBufferSize=2048;MaxScanRows=8;
PageTimeout=5;SafeTransactions=0;
Threads=3;UID=admin;UserCommitSync=Yes;
Y donde pone "Escriba la información para iniciar sesión en el servidor" pongo el nombre de usuario y la contraseña que uso para acceder al servidor.
Y pongo permitir guardar contraseña.

Pues si yo arranco el ordenador y lo primero que hago es correr mi aplicación, me dice que no puedo abrirla por que no me he autentificado, me voy a redes busco el servidor pincho en el para entrar, pongo la contraseña y veo las carpetas compartidas del servidor. Ahora corro mi aplicación y si que funciona.

Mi pregunta es ¿que es lo que hago mal y porque me pide la contraseña? , si yo en la configuracion del ADOConnection la he dejado puesta.

Espero que alguien sepa lo que me pasa y me pueda ayudar por que sino me he currado una aplicación que no le vale a mi empresa .

Un saludo Forer@s.
Responder Con Cita
Respuesta



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


La franja horaria es GMT +2. Ahora son las 08:38:17.


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
Copyright 1996-2007 Club Delphi