PDA

Ver la Versión Completa : Delphi 7 + SQL Server 2005 Express


lsedr
18-08-2011, 18:28:20
saludos

Alguien me puede ayudar a conectar una BD de SQL Server 2005 Express en un soft que estoy desarrollando en Delphi 7 ??

Mi problema es que quiero ejecutar el soft en otra pc, y como yo tengo la conexión hecha con el componente ADOConecction, cuando abro el programa funciona todo bien pero solo en mi pc, pero cuando copio la carpeta con todo y la BD en otra pc, ya no me funciona y me da error..

me gustaría que la conexión se haga automaticamente por medio de un archivo .ini

alguien me ayuda ?

oscarac
18-08-2011, 19:15:19
pues
crea un archivo INI
aqui (http://www.clubdelphi.com/foros/showthread.php?t=65999) hay un ejemplo de su utilizacion

saludos

lsedr
19-08-2011, 20:53:21
tengo esto en el Oncreate del Datamodule:

procedure TDataModule1.DataModuleCreate(Sender: TObject);
Var BaseDeDatos, ConStr : String;
IniFile: TIniFile;
begin
IniFile := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Inicio.ini');
BasedeDatos := IniFile.ReadString('BD','Path','');
If BasedeDatos = '' then ShowMessage('Error al cargar Base de Datos');
ConStr := ' Provider = sqloledb; '+
' Data Source = '+BaseDeDatos+';'+
' Initial Catalog = MiBase.mdf ';
AdoConnection1.ConnectionString := ConStr;
AdoConnection1 .Open;
end;

Y esto en el archivo .ini que esta en la misma carpeta donde esta todo el programa, en C:\Clients2010\

[BD]
Path="C:\Clients2010\"
[Logon]
Auto="No"
Login=""
Pass=""

Y la Base de Datos se llama MiBase.mdf

Pero no se quiere conectar mediante el archivo .ini y me da este error:

oscarac
19-08-2011, 21:03:47
esta es la cadena de conexion que yo utilizo..


Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Initial Catalog=Yobel

oscarac
19-08-2011, 21:11:16
y aqui tengo un ejemplo utilizando archivos INI

STR_CONN = 'Provider=SQLOLEDB.1;Password=%s;Persist Security Info=True;' +
'User ID=%s;Initial Catalog=%s;Data Source=%s';


fName := ChangeFileExt(Application.ExeName,'.ini');
ini := TIniFile.Create(fName);
_User := ini.ReadString(CONFIG_SECTION, 'User', STR_EMPTY);
_Password := ini.ReadString(CONFIG_SECTION, 'password', STR_EMPTY);
_Server := ini.ReadString(CONFIG_SECTION, 'Server', STR_EMPTY);
_BD := ini.ReadString(CONFIG_SECTION, 'BaseDatos', STR_EMPTY);
ConectarConcar.ConnectionObject.ConnectionString :=
Format(STR_CONN, [_password, _User, _BD, _server]);


y este es el archivo INI


[ConfigDB]
User=sa
password=Pjper
Server=192.168.1.200
BaseDatos=rsconcar

lsedr
19-08-2011, 21:51:12
esta es la cadena de conexion que yo utilizo..

Código Delphi [-] (http://www.clubdelphi.com/foros/#) Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Initial Catalog=Yobel



a dónde se coloca esto ?

gracias

oscarac
19-08-2011, 22:14:45
mejor utiliza el segundo ejemplo....
puedes colocarlo en el create del formulario Principal
o en el formulario login (si es que tienes uno)