Форум: "Базы";
Текущий архив: 2004.02.10;
Скачать: [xml.tar.bz2];
ВнизПредложение Найти похожие ветки
← →
}|{yk (2004-01-17 15:02) [0]Мне не нравится организация доступа к БД Interbase. Необходимо указывать хост расположение на нем БД иногда порт. Почему бы не сделать файл настроек (и положить его в папку с winnt) в котором прописывать настойки для разных БД, а обращаться по псевдониму? Переписать IBDatabase, добавить ему одно свойство и два метода.
Но - я не хочу изобретать велосипед. Может это уже решено?
← →
Desdechado (2004-01-17 15:10) [1]1. почему именно winnt ?
2. так часто с разными БД работаешь, что нужно переключатся?
3. тяжело в параметры Database при подключении писать?
← →
}|{yk (2004-01-17 16:50) [2]Выбирая пседоним функция будет расставлять параметры database
если есть несколькр тестовых машин то удобнее выбирать их псевдонимы и тестировать
дополнительно нужно переделать форму коннекта
← →
Cranium (2004-01-17 16:55) [3]А что тебе мешеает написать класс который бы этим и занимался...
← →
sniknik (2004-01-17 18:43) [4]бред (имхо), работаю именно с разными БД, такая двухступенчатая система только усложнит настройку а уж если такое решение еще и клиенту поставиш... ни в жизнь не выясниш что случилось при глюке без выезда.
если уж надо используй ADO и его настроечные udl файлы, настрой каждый под свою базу, переключатся выбором файла в строке коннекта.
либо алиасы bde/odbc переключение выбором алиаса.
только не получается так, переключил базу и работаеш уже с другой ничего не меняя. у каждой свои особенности, или нормально работаеш с конкретной базой(типом) или получится нечто ублюдочное что использует только минимум присутствующий абсолютно во всех базах. т.е. если ексел не позволяет удаление строк то нигде этого нельзя делать (а вдруг к нему подключатся/или к тексту), можеш себе такое представить? я нет.
← →
}|{yk (2004-01-17 19:52) [5]Ну это можно реализовать как вспомогательное - хочешь - выбираешь стандартый метод, хочешь - новый. Метод чтения вообще не нужно придумывать. Просто при записи будут меняться параметры. Но их можно менять и вручную.
← →
kaif (2004-01-19 04:05) [6]Я делаю один ini-файл (для приложения), в котором прописываю путь к файлу db.ini. Файл db.ini может лежать на сервере или на клиенте. В нем для каждого соединения делаю секцию [имя базы (читай алиас)], а в секции прописываю протокол, сервер, путь к базе и всякую относящуюся к базе глобальную информацию.
В приложении есть пункт меню "соединиться", который вызывает список всех секций из db.ini в ListView.
И кнопки "соединиться", "отмена",
"добавить..", "удалить", "свойства..".
Перед высветкой окна пытаюсь открыть db.ini на запись (как файловый поток). В случае ошибки, делаю все кнопки, кроме "соединиться" и "отмена" недоступными.
Расшариваю db.ini так (если он на сервере), чтобы читать его могли все, а писать - только те, кому доверяю "настройку соединений".
Если db.ini хранится на сервере (так обычно и бывает), то список "алиасов" для всех общий. Если на клиенте - то у каждого свой список алиасов.
Мне кажется это удобно (для моих задач).
А что-то встраивать в IBX не считаю необходимым. Каждый разработчик использует тот способ организации алиасов, который удобен ему для его специфических задач. Иногда ведь и не нужно, и даже вредно, чтобы настройку кто-то мог изменить...
← →
kaif (2004-01-19 04:08) [7]2 }|{yk © (17.01.04 15:02)
Кстати, ничто не мешает сделать своего потомка (как ты предложил) от класса TIBDatabase и юзать его вместо TIBDatabase в своих приложениях.
← →
MV (2004-01-19 15:33) [8]Возьми FIBPlus - вместо IBX - там все это да-а-авно есть.
← →
jack128 (2004-01-19 16:03) [9]в полуторке есть файл aliases.conf. Уж не знаю, зачем он, но может это то что те нужно?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.02.10;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c