Форум: "Базы";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];
ВнизАктивные сервера MS SQL Найти похожие ветки
← →
Alex_2004 (2004-07-30 17:15) [0]Здравствуйте, все!
Такая проблема. Заранее неизвестно, к какому серверу будет идти соединение. Как можно отдать это на откуп пользователю? Например: вывести список серверов для выбора?
← →
Term (2004-07-30 17:23) [1]ну хранить гдето строки конектов в инишке например, выводить имена серверов в грид скажем или дерево и по щелчку пытаться конектиться
← →
Alex_2004 (2004-07-30 17:26) [2]Так говорю же, неизвестно, какие сервера есть в наличии, пишется прога для распространения в разных местах, а там разные сервера могут быть
← →
Term (2004-07-30 17:29) [3]ну так предварительная настройка полюбому нужна
← →
Ega23 © (2004-07-30 17:33) [4]Ха, а откуда ты знаешь, что те SQL сервера, которые видны в рамках данной сети, будут именно те, которые тебе нужны? SQL сервер, теоретически, может быть установлен на каждой машине.
Где, как говорится, гарантии?
← →
Alex_2004 (2004-07-30 17:38) [5]Так когда через ADO компоненту подключаешься, выдается же список серверов, к которым можно подключиться, вот я и хочу получить этот список программно.
← →
Fay © (2004-07-30 18:02) [6]SQLDMO+BOL
← →
sniknik © (2004-07-30 21:11) [7]можно использовать примерно такой код, при условии что на юзерском компе установлено DMO (можно с пограммой инсталировать), если его нет то и когда через компаненту списка не будет.
(выкини лишнее, пара моих процедур тебе не нужных)
function TDMod.GetSQLServers(ServersItems: TStrings): boolean;
var
NameList, Application: OleVariant;
i:Integer;
sName: string;
begin
result:= false;
try
try
ServersItems.Clear;
Application:= CreateOleObject("SQLDMO.Application");
NameList:= Application.ListAvailableSQLServers;
for i:= 1 to NameList.Count do begin
sName:= NameList.Item(i);
if sName = "(local)" then sName:= GetComputerName;
ServersItems.Add(sName);
end;
result:= true;
except
on E: Exception do DoIfError(E.Message);
end;
finally
Application:= Unassigned;
end;
end;
← →
Alex_2004 (2004-08-02 11:47) [8]А что за зверь такой DMO? И с чем его едят? :)
Где его можно взять? Как узнать, установлен ли он на машине клиента?
← →
Alex_2004 (2004-08-10 11:27) [9]Спасибо большое всем за ответы, очень помогли! Вдогонку вопрос: а каким образом можно получить список баз данных, если известно имя сервера?
← →
Nikolay M. © (2004-08-10 11:35) [10]sp_helpdb
или
SELECT * FROM master.dbo.sysdatabases
← →
mart_2004 (2004-08-10 11:35) [11]Use master
Select * From sysdatabases
← →
Alex_2004 (2004-08-10 16:59) [12]Спасибо за ответы, все работает :). Опять вопрос вдогонку: как у компонента TADOConnection проверить, есть ли уже подключение или нет? И если есть, то произвести отключение. Заранее спасибо.
← →
sniknik © (2004-08-10 17:10) [13]> И если есть, то произвести отключение.
зачем проверять? TADOConnection.Connected:= False; и все, если не подключено ничего не произойдет.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.042 c