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)
-   -   Conexión con Access (https://www.clubdelphi.com/foros/showthread.php?t=32869)

Miguel45 19-06-2006 16:27:30

Conexión con Access
 
Hola compañeros.
Mi problema es el siguiente: Trabajo con delphi 7. Quiero accedere a una base de datos de access (mdb). Está protegida en una información de grupo de trabajo *.mdw. Conozco el usuario y la contraseña, pero al intentar abrir la base de datos, me aparece un mensaje que me dice que no tengo los permisos necesarios para acceder a ella, que el administrador tiene que dármelos.
Sé que para abrirla directamente tiene que ser mediante un acceso directo con este formato:
"C:\Archivos de programa\Microsoft Office\OFFICE11\MSACCESS.EXE" "C:\Test\Conf.mdb" /WRKGRP "C:\Test\Protegida.mdw"
donde Conf.mdb es la tabla access y Protegida.mdw la información de grupo de trabajo.
¿Cómo puedo abrir la tabla desde Delphi?
Si algo no se entiende me lo haceis saber.
Un saludo y gracias anticipadas.

DarkDrakon 19-06-2006 16:45:21

Una Opcion
 
:D Bueno, antes que todo haz instalado la base de datos (Access) en el Administrador de Origenes de datos ODBC (Panel de Control\Herramientas Administrativas\Orígenes de datos (ODBC)), bueno porque cuando trabajaba con Access siempre enviava ahi la Base de Datos;


:rolleyes: para que cuando en Delphi7(hay un componente :: Table el cual se puede enlazar con cualquier Base de Datos que este en el Administrador.

De ahi ya podras usar dicha Base de datos, bueno si aun asi tienes algun problema para acceder a la Base de Datos me lo haces saber, y sobre todo que problemas te causa :p .

marcoszorrilla 19-06-2006 16:58:37

También puedes hacer lo mismo con los componentes ADO que acompañan a Delphi y sino quieres que te pida la contraseña, marcas LoginPrompt a False y en tiempo de diseño colocas la contraseña en el componente correspondiente, la conexión es bastante fácil puesto que trae un asistente que te va pidiendo los datos paso paso.

Un Saludo.

Miguel45 19-06-2006 17:57:03

Hola compañero, gracias por responder.
Sí que tengo definido el alias a la tabla access en el ODBC.
Ya he trabajado en más ocasiones con tablas access sin problemas, pero en esta ocasión, al estar protegida, el mensaje que me devuelve al intentar abrirla es que no tengo los permisos necesarios para realizar esta acción.
Según he leído, en visual basic se puede abrir con el siguiente código:
s="Provider=Microsoft.jet.Oledb.4.0;"&_
"Data Source="&Diraplicacion & "Conf.mdb;"&_
"Jet OLEDB:System database="DirAplicacion & "protegida.mdw"
ConProt.Open s, UserId:='Miguel",Password:="1234"
donde S es la cadena de conexión.
Creo que este código o parecido se puede aplicar en Delphi.
Gracias.

palets 20-06-2006 18:26:58

TADOConnection
 
Asi es, en el componente TADOConnection se configura la ConnectionString, y en ella estan todas las opciones incluyendo las de Password.

Efectivamente tambien pon el LoginPromt en False. Ademas con ese componente evitas el tenerlo que registrar en ODBC.

Miguel45 21-06-2006 09:35:19

Gracias de nuevo por vuestra respuesta.
Hasta ahora no he usado componentes ADO (siempre he trabajado con interbase y los componentes TDataBase, TTable, TQuery,...)
Si ahora uso en esta aplicación un componente ADO ¿Me va a crear alguna incompatibilidad con el resto de código de la aplicación? (Aquí sí que uso Firebird y componentes DBE: SQLConnection,...)
Un saludo.


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

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