Текущий архив: 2003.02.06;
Скачать: CL | DM;
ВнизКомпонента SQLDirect Найти похожие ветки
← →
Higs (2003-01-11 18:03) [0]Подскажите, пожалуйста, если кто сталкивался! Есть проект, использующий компоненты SQLDirect. База MSSQL 2000. В DataModule экземпляр TSDDatabase. Из главной формы открываю child-форму с компонентом TSDStoredProc. Форма создается при выборе пункта меню. Если в экземпляре компоненты TSDDatabase в designtime задаю сервер:базу ("server:pubs") и в его же свойствах указываю название базы (pubs), а потом указываю в TSDStoredProc.DatabaseName тоже pubs (это все в дизайн-режиме), то все коннектит и работает. Если же для TSDStoredProc.DatabaseName присваиваю значение (pubs) в runtime, то при открытии формы требует снова логин-пароль к базе. Подскажите, если кто сталкивался, где косяк?
← →
bolega (2003-01-13 08:13) [1]C SQLDirect работаю давно.
Такого глюка вроде бы не было, во всяком случае
в последних двух версиях SQLDirect.
У меня используется Windows Autintification.
← →
Higs (2003-01-13 08:49) [2]У меня тоже Windows Authentification. Ж:-(
И версия тоже вроде бы последняя. А ты не пробовал программное изменение DatabaseName? Никаких тонкостей нет?
Точнее, я хочу сделать установку DatabaseName при запуске программы в зависимости от рабочего места. И вот при запуске присваиваю Database.DatabaseName := "basa1", а потом в коде при создании разных форм StoredProc.DatabaseName := Database.DatabaseName и потом StoredProc.Active := True.
И вот тут-то и вылазит снова диалог логин/пароль
← →
bolega (2003-01-16 13:22) [3]> присваиваю Database.DatabaseName := "basa1", а
Ты имеешь ввиду свойство TSDDatabase.DatabaseName?
Если да, то тогда зачем это нужно.
У меня тоже открытие базы происходит программно.
Но я динамически задаю свойство TSDDatabase.RemoteDatabase
А всякие там TSDQuery.DatabaseName всегда постоянные и указывают на TSDDatabase.DatabaseName.
И еще. Надеюсь, у тебя TSDDatabase.LoginPrompt=False
← →
bolega (2003-01-16 13:29) [4]Вдогонку.
Вспомнил еще одну вещь.
Посмотри, какое значение у TSDDatabase.Params
Бывает, там остается какой-то мусор.
У меня там прописано
USER NAME=
После равно ничего нет.
И все работает.
← →
Higs (2003-01-19 21:13) [5]Блин, поздно посмотрел, занят был!
1)TSDDatabase.LoginPrompt=False Именно так.
2)TSDDatabase.Params тоже очищено, стоит также "USER NAME=" и больше ничего, как и написано в документации.
Я программно хотел бы поменять (в конечном резульате, читать из ini-файлика) RemoteDatabase и DatabaseName, хотел динамично переключать клиентаскую программу на резервную базу на том же или другом сервере. И в коде при создании формы пишу, что
TSDQuery.DatabaseName := TSDDatabase.DatabaseName
И вот тут-то, при открытии этого датасета и происходит запрос на логин/пароль!
Во как все замудрено! А так жаль, что не пока не получилось!
Страницы: 1 вся ветка
Текущий архив: 2003.02.06;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.01 c