
12.03.2014, 15:31
|
 |
Профессионал
|
|
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
|
|
Цитата:
Сообщение от yuoras
Опишите пожалуйста , как дать возможность пользователю с клиенским приложением самому выбирать сервер и базу данных.
Есть три сервера с разными IP но одинаковыми базами (одинаковой структурой).
Тупо было бы использовать три программы для работы всего лишь с разницей подключения баз.
|
Если подключение делаешь через ADO, то просто присваивай свойству ConnectionString соответствующее значение:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
ServerName, DatabaseName: String;
begin
if InputQuery('', 'Введите имя сервера или его IP-адрес', ServerName) and
InputQuery('', 'Введите имя базы данных', DatabaseName) then
begin
ADOConnection1.Close;
ADOConnection1.ConnectionString := 'Provider=SQLOLEDB.1;Integrated Security=SSPI;'+
'Persist Security Info=False;Initial Catalog='+DatabaseName+';Data Source='+ServerName;
ADOConnection1.Open;
end;
end;
// Или так:
procedure TForm1.Button2Click(Sender: TObject);
var
ServerName, DatabaseName, User, Password: String;
begin
if InputQuery('', 'Введите имя сервера или его IP-адрес', ServerName) and
InputQuery('', 'Введите имя базы данных', DatabaseName) and
InputQuery('', 'Введите имя пользователя', User) and
InputQuery('', 'Введите пароль пользователя', Password) then
begin
ADOConnection1.Close;
ADOConnection1.ConnectionString := 'Provider=SQLOLEDB.1;Password='+Password+
';Persist Security Info=True;User ID='+User+';Initial Catalog='+DatabaseName+
';Data Source='+ServerName;
ADOConnection1.Open;
end;
end;
|