Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.06;
Скачать: CL | DM;

Вниз

Доступ к Firebird   Найти похожие ветки 

 
Sergant ©   (2002-12-13 06:31) [0]

Уважаемые Мастера!
Делаю справочную систему на Firebird 1.0. Программа будет состоять из двух модулей - администраторского (в котором можно добавлять, удалять и изменять пользователей) и, собственно, сама справочная система. Для досnупа к базам Firebird 1.0 имеются следующие компоненты:
IBX (само собой), FIB Plus 4.5, IbObject 3.5 и ZeosLib 5.3.4
Какой из компонентов лучше подходит для администрирования, какой лоя непосредственной работы?
Или есть среди перечисленных компонент, который подходит и для того, и для другого?
Поделитесь мнениями, каким компонентом воспользоваться лучше всего?
И еще вопрос: как можно узнать существует ли в базе данных указанная хранимая процедура/триггер/таблица?
Заранее благодарю.


 
Alexandr ©   (2002-12-13 08:48) [1]

можно пользоваться всем. Но
IBX: плохо поддерживает Firebird и кривой - надо много ручками править
FibPlus поддерживает все. не кривой, но баги есть
IBObjects несколько своеобразный, но привыкнуть можно. Очень дорогой, Поскольку он своеобразный, то не поймешь где кривой, где глюк, а где так и задумано...
Zeos простой, по-моему беспланый, но возможностей мало, да очень мало кто с ним работает...


 
Prooksius ©   (2002-12-13 09:45) [2]

FIBPlus пользуйся. Для всего.
По второму вопросу - запрос по системным таблицам.
Почитай www.ibase.ru - там точно есть описание системных таблиц.


 
Alexandr ©   (2002-12-13 09:50) [3]

да, и самое главное.
Если найдешь баги, захочешь новую фанкциональность компонентов, то к тебе прислушаются на русском языке и исправят быстрее всего в FIBPlus.
Для IBX можешь даже не пытаться обращаться, правь сам однозначно.
Для IBO придется писать не по-русски, да и то, покупать лицензию нада а на нее надо много президентов...
Для zeos незнаю...


 
Сергєєв Володимир   (2002-12-13 23:23) [4]

Кому нужны исходники IBO - обрашаться ко мне на мыло. И на фиг эту лицензию. :)))

У тебя есть два варианта.
1) Сделать разграничение доступа средствами InterBase. Тогда и IBX можно воспользоваться, только не младше 6.5. Но вообще, лучше конечно IBO. А вот про ее философию правду говорят, она отлична от философии Бормана (и похожую на нее FIB+), и требуется немного привыкнуть.

2)Есть еще один вариант. Подсмотрел в одной проге "ТоварСклад" под SyBase. Создай свою таблицу SYS_USERS и детальные таблицы с ТВОИМИ настройками и КАК ТЕБЕ НАДО, а прога путь коннектися к базе с правами SYSDBA (естессно, поменяй masterkey на че нибудь, а пароль храни например в реестре где нибудь в HKCR\CLSID\{0909090909090909090}\ в зашифрованнном виде). С одной стороны, это переносит на клиента обработку доступа, но с другой - повышается удобство для тебя.
А я как делал. У меня была еще таблица SYS_MENUS (в ней хранилось дерево главного меню программы) и SYS_Users_menus(два поля MENU_ID(REFERENCES SYS_MENUS) и USER_ID(REFERENCES SYS_USERS)). а доступ к функциям программы осуществлялся только через главное меню.
Программа коннектится с правами Админа, проверяет, есть ли данный пользователь, если есть, то выбирает из SYS_MENUS только ту часть дерева главного меню программы, которая разрешена этому пользователю.
Конечно, это явное нарушение теории баз данных и еще одна уязвимость программы, но зато все работает очень быстро. И есть еще возможность менять настройки "на лету" обработкой событий POST_EVENT перестраивать заново главное меню.
Конечно, если ты собираешься хранить пусковые коды ракет Пентагона в базе, то НИ В КОЕМ СЛУЧАЕ ТАК НЕ ДЕЛАЙ! Но, если у тя бухгалтерская программа для закрытого офиса, где 99% персонала - бухгалтера, не знающие, что на дискету однако фильм не влазит, а оставшийся 1% - СисАдмин, который мечтает о том, когда наконец изобретут искусственный интеллект, то все нормально.



Страницы: 1 вся ветка

Текущий архив: 2003.01.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.014 c
1-15159
Студент
2002-12-19 23:45
2003.01.06
непонятный глюк


14-15280
cyborg
2002-12-16 23:39
2003.01.06
Вопрос не понятно какой темы, в общем наверное потоки виноваты


14-15313
J_S
2002-12-18 14:32
2003.01.06
SQL & dbExpress


1-15073
Jeka
2002-12-19 15:11
2003.01.06
убрать лишнее


4-15367
vic_774N
2002-11-19 17:57
2003.01.06
Shutdown - Вопрос избитый но дело не в этом .