Delphi - Definir connectionstring en run time

 
Vista:

Definir connectionstring en run time

Publicado por JuanchoDev (20 intervenciones) el 14/03/2010 04:34:16
Estoy haciendo una aplicacion q pega contra una BBDD MSSQL Server.
En resumidas cuentas:
La propiedad connectionstring se define en tiempo de ejecución con un parametro q recibe de un usuario q lo ingresa por un combo (el servidor de MSSql).
Me darían una mano con la validación para q el campo donde se indica el nombre del server no este vacío...?
Yo hice esto, funciona...el tema es cuando el combobox no tiene nada, aqui es cuando manda el mensaje y luego tira un error "La operacion no esta permitida si el objeto esta abierto".

if length(combobox1.Text) = 0 then
begin
showmessage('Ingrese un servidor ');

end
else
datamodule3.ADOConnection1.Close;
datamodule3.ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;Password=lapassword;Persist Security Info=True;User ID=sa;Initial Catalog=labase;DataSource='+combobox1.text;
datamodule3.ADOConnection1.Open;
...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Definir connectionstring en run time

Publicado por martin (43 intervenciones) el 14/03/2010 16:24:30
podrias intentar algo asi:

if combobox1.Text = '' then
begin
showmessage('Ingrese un servidor ');
exit;
end ;

Try

datamodule3.ADOConnection1.Close;
datamodule3.ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;Password=lapassword;Persist Security Info=True;User ID=sa;Initial Catalog=labase;DataSource='+combobox1.text;
datamodule3.ADOConnection1.Open;

except

On e:Exception Do
Begin
Showmessage('EL Host no existe o no hay un servidor MS SQL SERVER Activo en el mismo, error='+e.message);
End;

end;

EL try es muy util en estas situaciones o enc asi todas donde podes tener mas control sobre la exceptions que la aplicacion pueda recibir o generar y de esta manera poder generar mensajes de error mas adecuados para los usuarios.

espero te ayude ne algo.

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar