![]() |
Cómo conectar "simple" a DB Access
Hola, me ha surgido una duda existencial, me han encargado hacer una exportación de datos a un programa de contabilidad (otro más), pero este usa una BD Access.
El asunto es que necesito conectar a esa base de datos para pasarle una serie de registros habituales en estos casos: apuntes, cuentas, etc. y me han surgido varias dudas después de haber estado consultando algunos posts en clubdelphi. La primera es que hay que usar una "cadena" de conexión y no sé exactamente qué poner ahí, he visto que hay varias posibilidades de "motores", entre ellos estos: Cita:
Y otra duda, el usuario y password predeterminado en access, ¿cuál es? Y de momento esas son todas las dudas. Por si sirve de algo: Delphi 5 + IBX + Firebird 1.5 ---> ¿ADO? + ¿ODBC? + Access |
Hola Casimiro: Generalmente lo que se hace es exportar en formato texto y luego cualquier programa de contabilidad importa, al inyectar los datos directamente siempre puedes tener el problema que si pasa algo al otro programa lo achaquen a que se han metido datos a las tablas por "fuerza bruta".
Un Saludo. |
Hola,
Independientemente del sistema que utilices, yo he utilizado Microsoft Jet 4.0 OLE DB Provider cuando he utilizado ADO. Cuando generas la cadena de conexión, puedes mirarla ( es un texto ) para que el propio usuario pueda cambiarla , o utilizar un ini para que la bbdd pueda residir en cualquier lugar. Si miras la cadena de conexión, encontrarás dentro de ella "C:\datos\bbdd.mdb". Para personalizar la conexión sólo tienes que cambiar este dato y reconectar. Con ODBC sería más peliagudo ya que tienes que editar el odbc. Se podría hacer por código, pero lo veo más complicado. Saludos |
Cita:
La forma habitual para conectar a Access con ADO (utilizando el motor de Jet 4, que es el de Access) es la primera que has propuesto: Microsoft Jet 4.0 OLE DB Provider Lo único imprescindible es tener en el ordenador instaladas las MDAC y mínimamene actualizadas (cosa muy habitual si el sistema está actualizado); Si vas a trabajar con alguno muy antiguo (w98), tal vez podrías revisarlo. En este caso no hace falta ni siquiera que esté Access instalado. Para Access, salvo que la Base de Datos tenga seguridad implementada, se usa Admin y contraseña vacía. Delphi 5 + IBX + Firebird 1.5 Delphi 5 + ADO + Access La cadena de conexión la puedes obtener utilizando el asistente que viene con el ADOConnection/ADOTable; De todas formas si quieres todos los detalles, incluyendo las que incluyen contraseña en la Base de Datos y las que tienen seguridad implementada, puedes verlas aquí. |
Muchas gracias a todos, es que ando perdido en estas cosas de access, jet, mdb :D
Cita:
|
Bueno, ya he acabado un programita para pruebas y gracias a vuestra ayuda ha sido bastante sencillo, lo único raro es que me resulta extraño no tener transacciones, me recuerda la época del dbase, qué tiempos aquellos.
|
Cita:
.Set Filter to Codigo = "4300001" .Browse .Quit Un Saludo. |
Cita:
|
Hola
No se que tipo de transacciones?? o que serán.:confused: Lo que si se es que si se quiere que se ejecute una acción con eficacia y sin que tenga problemas en access se usa algo como esto, sobre todo si se trabaja en red y con varios usuarios a la vez: Lo mas seguro es que me equivoco pero para mi lo colocado en rojo son transacciones, digo.:), me equivoco?:confused: Saludos |
:eek: entonces sí que tiene transacciones.
Por cierto, ¿qué componente es el que has nombrado AC1 (DataModule1.AC1.BeginTrans)? Muchas gracias, Caral, ese código me viene muy bien para lo que necesito hacer. |
Hola
Uso los componentes ADO, este es el ADOConnection. ADoConnection1 Es mas fácil de escribir.:D Saludos |
Hola
Amigo sabes que de estas cosas no se, pero si necesitas ayuda tu nada mas pide. En lo que este a mi alcance (osea no mucho) con gusto. Saludos |
Cita:
|
hola que tal estoy tratando de hacer uan interfaz con access pero veo que cambia un poco el codigo del tadoconnections en esta linea que inicias la transaccion.
DataModule1.AC1.BeginTrans; no es necesario primero darle un connect ??? o siempre esta conectado a la bd estoy un poco enredado con estas sentencias gracias. |
Hola
Tiene que estar conectado. Saludos |
gracias caral por responder, me surge otra duda al estar conectado todo el tiempo el componente no interfiere con el funcionamiento normal del aldelo ??, la pregunta es por que tengo dos etsaciones en red que estaran escribiendo datos al mismo tiempo que mi aplicacion, y una ultima duda encontre un codigo tuyo
Código:
except |
Hola
No afecta que este conectado ya que es el ADOconnection no una tabla en especial, lo uso en red con varios programas corriendo sin problemas. Lo otro, la teoria dice que si, pero la practica no es tan cierta, depende de como se incluyan o modifiquen los datos. Saludos PD: Tendrias que preguntarle a alguien que sepa, yo apenas aprendo. |
gracias por tu tiempo caral, creo que ahora estoy un poco mas confiado en meterle mano al aldelo, y pues ya somos dos los que estamos aprendiendo access :D mil gracias.
|
| La franja horaria es GMT +2. Ahora son las 16:49:38. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi