Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   AdoConection (https://www.clubdelphi.com/foros/showthread.php?t=19462)

Nbull 15-03-2005 13:54:22

AdoConection
 
Hola, estoy programando con Delphi7, con componentes Ado y mi base de datos es de Access, vale el problema es que no se donde va a estar la base de datos por que el usuario la podra poner en el servidor de la red, o en su Pc.

Para eso al arrancar el programa pido que me digan donde esta la base de datos, hasta ahí bien, pero,una vez que tengo el Path de la base de datos,
¿como se lo asigno a mi ADOConnection1.ConnectionString?

No se si me explique bien.

Muchas Gracias anticipadas.

Un saludo

marcoszorrilla 15-03-2005 14:57:42

Tengo esta información al respecto:
Cita:

propiedad ConnectionString del control ADOConnection asociado puede usar el editor de propiedades para construir la cadena de conexión correcta. Por ejemplo:

Provider=Microsoft.Jet.OLEDB.4.0;
User ID=Admin;
Password=Password;
Data Source=D:\Path\dbname.mdb;
Mode=ReadWrite;
Extended Properties="";
Persist Security Info=False;
Jet OLEDB:System database="";
Jet OLEDB:Registry Path="";
Jet OLEDB:Database Password="";
Jet OLEDB:Engine Type=5;
Jet OLEDB:Database Locking Mode=1;
Jet OLEDB:Global Partial Bulk Ops=2;
Jet OLEDB:Global Bulk Transactions=1;
Jet OLEDB:New Database Password="";
Jet OLEDB:Create System Database=False;
Jet OLEDB:Encrypt Database=False;
Jet OLEDB:Don't Copy Locale on Compact=False;
Jet OLEDB:Compact Without Replica Repair=True;
Jet OLEDB:SFP=False

NOTA: Va todo junto en la misma línea.

Esta cadena de conexión abrirá la base de datos D:\Path\dbname.mdb usando el controlador ADO para bases de datos Access (Microsoft.Jet.OLEDB.4.0). El nombre de usuario sería Admin sin contraseña (los valores por omisión cuando se crea una base de datos Access). Si ha establecido una contraseña para su base de datos, deberá proveerla en la propiedad Jet OLEDB:Database Password. Si ha establecido seguridad, entonces debe indicar su archivo .MDW o .MDA de grupos de trabajo en la propiedad Jet OLEDB:System database.
Un Saludo.

Nbull 15-03-2005 15:51:20

Hola Marcos,eso ya lo habia provado yo y me da un error al compilarlo,mira tengo la siguiente linea:

Código Delphi [-]
Form1.ADOConnection1.ConnectionString:=Provider=Microsoft.Jet.OLEDB.4.0;User 
ID=Admin;Data Source=carpeta.text;Mode=ReadWrite;Extended
Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet
OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database 
Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:......
Donde pone Data Source he puesto donde tengo guardada la ruta de mi BD, pero, el problema lo da nada mas comenzar la linea, me dice que no esta declarado provider, y no se como co* pasarle la ruta de la base de datos al Ado Connection.

A ver si me puedes echar una mano por que le dado muchisimas vueltas al asunto y nada.

Venga un Saludo y a pasar buena tarde.

CHiCoLiTa 21-03-2005 16:08:14

Para ser una base de datos en Access, tampoco tienes que pasar tantos parametros
Ademas segun lo que le estas pasando, no has puesto la comilla simple al principio de la linea

Si no tienes permisos especiales, ni contraseña con solo esto ya te funcionara. Y si pones un OpenDialog, evitas que metan la pata al escribir el nombre

Tal y como lo tienes ahora, prueba con esto

Código Delphi [-]
with Form1.ADOConnection1 do
begin
  ConnectionString := Format('Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=%s'), [carpeta.text]);
  try
    open;
  except
    raise exception.create('No se puede abrir la base de datos');
  end;
end;


La franja horaria es GMT +2. Ahora son las 01:36:44.

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