Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Access или FireBird? / 25 сообщений из 64, страница 1 из 3
01.03.2005, 04:03
    #32937561
Ledokol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
У клиента стоит база на Акцессе (которую я и написал), но со временем количество юзеров выросло и стали возникать проблеммы типа "Нераспознаваемы формат БД" Я сделал всякие автоматические востановления и архивации, но все равно сей глюк напрягает...
Поэтому решил приспособить что-то другое. Перечитал форум и присмотрелся к FireBird. Клиет-серверная структура типа FireBird->C++Builder (Delphi) мне конечно по душе, но возникает ряд воросов...
Если знатокам не трудно то просвятите...please
1. К каким косякам надо готовится, используя FireBird (м.б. "Нераспознаваемый формат БД" у акцесса это цветочки)?
2. Неужели у C++Builder (Delphi) для просмотра таблиц только DBGrid и есть, а все остальное только ручками или подходящий ActiveX искать (я имею ввиду что у Акцесса ленточную форму можно как угодно настроить, а DBGrid чувствуются ограничения, /ну например два поля друг под другом в одной строке/)?
...
Рейтинг: 0 / 0
01.03.2005, 04:09
    #32937563
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
судя по ленточным формам - клиент у вас на аксесе?
ну и на кой ляд вам геморой со сменой как клиентской части, так и "серверной"?
оставьте клиента на аксесе, а базу перенесите на MS SQL (или полный, или бесплатный MSDE). и будет вам щастье.
минимальные переделки - и про нераспознаваемый формат можете забыть.
...
Рейтинг: 0 / 0
01.03.2005, 06:34
    #32937601
Ledokol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
Да, сейчас клиентская и "серверная" часть на Акцессе, но дело в том, что требуется разработка приложения с активной работой по карте (т.е. с графикой), а из моего опыта работы в Акцессе, когда дело касается OLE объектов, то начинаются тормоза (это я в формы вставлял картинки, для определения состояния той или иной записи). Поэтому с целью ускорения работы с графикой и решил рассматривать что-то иное.

ЗЫ.
Может кто еще подскажет, как создать поле счетчика (автоинкремента) в FireBird? Генератор и триггер я создал. В самом FireBird'е счетчик полей работает, но когда в таблицу из Builder'а пишешь, то нифига не инкрементирует. Требует задать значение вручную :(
...
Рейтинг: 0 / 0
01.03.2005, 07:26
    #32937627
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
первое правило разработчика баз данных в BCB/Delphi - _никогда_ не используй TTable
...
Рейтинг: 0 / 0
01.03.2005, 07:30
    #32937632
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
вот еще, не правило но рекомендация:
не позволяй пользователю редактировать/добавлять записи прямо в гриде.
делай модальное окошко, в котором пользователь вводит нужные поля и нажатием кнопки "сохранить" или там "ок" коммитит данные.

и еще рекомендация. если ты используешь TDBNavigator - _забудь_ про него :-)

ни в одном моем проекте нет этого навигатора, но это, конечно, возможно следствие моей врожденной тупости и все остальные часто его используют.
...
Рейтинг: 0 / 0
01.03.2005, 07:41
    #32937642
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
вот еще, не правило но рекомендация:
не позволяй пользователю редактировать/добавлять записи прямо в гриде.
делай модальное окошко, в котором пользователь вводит нужные поля и нажатием кнопки "сохранить" или там "ок" коммитит данные.
Хмм... Прости господи, какое-то уродское правило (имхо)
Причем встречаю такое уже не в первый раз. Кажись подобный стиль характерен и для дельфей, и для VB.
Можно спросить, в дельфях и VB что, имеются какие-то проблемы с databound контролами и гридами?

сори за оффтоп.
...
Рейтинг: 0 / 0
01.03.2005, 08:36
    #32937698
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
какое правило по твоему уродское?
то, которое я назвал рекомендацией а не правилом?
ну это не важно. я за других не скажу, но в моей практике такой подход себя ничем не дискредитировал, более того, в тех формах, где значения менялись прямо в гриде, некоторые торопливые невнимательные пользователи мне потом доказывали, вот я этого не меняла/не делала а оно тут стоит.
...
Рейтинг: 0 / 0
01.03.2005, 08:53
    #32937715
f_w_p
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
Ledokol1. К каким косякам надо готовится, используя FireBird (м.б. "Нераспознаваемый формат БД" у акцесса это цветочки)?
Что забудешь где сервер стоит.

Ledokol2. Неужели у C++Builder (Delphi) для просмотра таблиц только DBGrid и есть, а все остальное только ручками или подходящий ActiveX искать (я имею ввиду что у Акцесса ленточную форму можно как угодно настроить, а DBGrid чувствуются ограничения, /ну например два поля друг под другом в одной строке/)?
Еще есть DBCtrlGrid. Кроме стандартных гридов есть масса сторонних компонент. На мой взгляд одни из самых популярных QuantumGrid и TDBGridEh. Последним пользуюсь, очень неплох.

LedokolМожет кто еще подскажет, как создать поле счетчика (автоинкремента) в FireBird? Генератор и триггер я создал. В самом FireBird'е счетчик полей работает, но когда в таблицу из Builder'а пишешь, то нифига не инкрементирует. Требует задать значение вручную :(
Довольно частый вопрос у новичков. Посмотри в архивах в соответствующем форуме. Недели две назад обсуждали.
Я делаю через ХП.
...
Рейтинг: 0 / 0
01.03.2005, 09:01
    #32937733
f_w_p
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
Лох ПозорныйХмм... Прости господи, какое-то уродское правило (имхо)
Кажись подобный стиль характерен и для дельфей, и для VB. Можно спросить, в дельфях и VB что, имеются какие-то проблемы с databound контролами и гридами?

У меня такая "уродская" практика сложилась еще со времен Clipper. Тогда шла борьба с зависшими блокировками, разрушенными индексами и прочими прелестями файл-серверной технологии. Но оказалось, что и на КС она неплохо работает.
...
Рейтинг: 0 / 0
01.03.2005, 09:04
    #32937738
f_w_p
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
alex_kя за других не скажу, но в моей практике такой подход себя ничем не дискредитировал, более того, в тех формах, где значения менялись прямо в гриде, некоторые торопливые невнимательные пользователи мне потом доказывали, вот я этого не меняла/не делала а оно тут стоит.
Тут желательно добавить либо фискальную таблицу, либо фискальные поля в каждую таблицу и фиксировать кто и когда вносил изменения. Иначе всегда будешь крайний.
...
Рейтинг: 0 / 0
01.03.2005, 09:38
    #32937804
Ledokol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
Еще есть DBCtrlGrid. Кроме стандартных гридов есть масса сторонних компонент. На мой взгляд одни из самых популярных QuantumGrid и TDBGridEh. Последним пользуюсь, очень неплох.

Сразу возникает вопрос: где раздобыть QuantumGrid и TDBGridEh? Во вкладках BCB не нашел...

LedokolМожет кто еще подскажет, как создать поле счетчика (автоинкремента) в FireBird? Генератор и триггер я создал. В самом FireBird'е счетчик полей работает, но когда в таблицу из Builder'а пишешь, то нифига не инкрементирует. Требует задать значение вручную :(
Довольно частый вопрос у новичков. Посмотри в архивах в соответствующем форуме. Недели две назад обсуждали.
Я делаю через ХП.[/quot]

Что значит ХП? (извиняюсь за назойливость)
...
Рейтинг: 0 / 0
01.03.2005, 10:38
    #32937977
f_w_p
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
LedokolСразу возникает вопрос: где раздобыть QuantumGrid и TDBGridEh? Во вкладках BCB не нашел...
Это сторонние компоненты и их надо доустанавливать. TDBGridEh можно скачать по
http://www.farpost.com/personal/dmitryb
Вообще есть такой сайт - TORRY . Там можно найти компоненты на все случаи жизни.

LedokolЧто значит ХП? (извиняюсь за назойливость)
Ничего страшного. ХП - это хранимая процедура.
...
Рейтинг: 0 / 0
01.03.2005, 11:57
    #32938240
ЛП
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
2 alex_k
более того, в тех формах, где значения менялись прямо в гриде, некоторые торопливые невнимательные пользователи мне потом доказывали, вот я этого не меняла/не делала а оно тут стоит
Да пусть доказывает что угодно - если на права на изменение есть только у этого пользователя, а в логе изменений прописан его логин.
Для невнимательных можно дополнительный confirm сделать. Однако обычно просят сделать шоб было как можно удобнее, а не как можно неудобнее (зато типа не ошибешься).

2 f_w_p
У меня такая "уродская" практика сложилась еще со времен Clipper. Тогда шла борьба с зависшими блокировками, разрушенными индексами и прочими прелестями файл-серверной технологии. Но оказалось, что и на КС она неплохо работает.
Простите, а ФС и КС здесь причем? Что, вынос редактирования из непосредственно грида в отдельную формочку - позволит не блокировать изменяемые записи? Или индексы перестанут рушиться?
моя не понимай
...
Рейтинг: 0 / 0
01.03.2005, 12:15
    #32938297
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
авторПростите, а ФС и КС здесь причем? Что, вынос редактирования из непосредственно грида в отдельную формочку - позволит не блокировать изменяемые записи? Или индексы перестанут рушиться?
Угу, позволит. Потому что оттуда, из отдельной формы, через ХП данные меняются, а не напрямую.

авторДля невнимательных можно дополнительный confirm сделать.
Я делал на удаление аж три конфирма - когда удалили, пришли и говорят: я три раза ОК нажал и все удалилось

-- Tygra's --
...
Рейтинг: 0 / 0
01.03.2005, 12:44
    #32938416
Alexey Sh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
Необходимость использования модальной формы диктуется ИМХО кривостью гридов. А что, грид на изменение строки не может соответствующую ХП вызвать?
...
Рейтинг: 0 / 0
01.03.2005, 12:56
    #32938450
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
Может.

Но я также считаю, что редактирование данных в гриде, кроме особых случаев, это есть нехорошо и неудобно (особенно когда у вас 25 полей и половина из них списки и чекбоксы), поэтому нигде так не делаю - только отдельной формой, правда модальной или немодальной в зависимости от разных вещей

-- Tygra's --
...
Рейтинг: 0 / 0
01.03.2005, 13:04
    #32938486
Alexey Sh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
2 tygra : скорей вопрос в том. как результат редактировая грида отправлять в базу. Я считаю правильным отравлять не построчно, а одной транзакций
...
Рейтинг: 0 / 0
01.03.2005, 13:06
    #32938491
ЛП
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
tygra авторПростите, а ФС и КС здесь причем? Что, вынос редактирования из непосредственно грида в отдельную формочку - позволит не блокировать изменяемые записи? Или индексы перестанут рушиться?
Угу, позволит. Потому что оттуда, из отдельной формы, через ХП данные меняются, а не напрямую.
Что позволит? В момент фиксации изменений не блокировать запись? Покажите мне такую модальную форму и такую ХП
Кстати, смешались в кучу кони, люди... Где вы в файл-серверной архитектуре ХП нашли? Или наоборот, где в клиент-серверной - изменение "напрямую"? Для ФС - один хрен напрямую, что через доп.форму, что через грид. Для КС - один хрен через Update-запрос из грида или вызов сохраненки из формы. Не думаете же вы, что грид напрямую с mdf и ldf файлами работает (для MS SQL)?

tygraНо я также считаю, что редактирование данных в гриде, кроме особых случаев, это есть нехорошо и неудобно (особенно когда у вас 25 полей и половина из них списки и чекбоксы)
Кто вам мешает в гриде списки и чекбоксы держать?
...
Рейтинг: 0 / 0
01.03.2005, 13:07
    #32938496
ЛП
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
Alexey Sh2 tygra : скорей вопрос в том. как результат редактировая грида отправлять в базу. Я считаю правильным отравлять не построчно, а одной транзакций
Надо транзакцией - делайте транзакцию. По кнопке ей делайте коммит. Зачем для транзакции дополнительная форма?
...
Рейтинг: 0 / 0
01.03.2005, 14:09
    #32938713
Ledokol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
У меня тут еще вопрос возник... а ADO компоненты не проще будет использовать?
И еще если с их помощью через JET провадера с .mdb файлом работать то это уже ФС сиситема получиться?
ЗЫ
Я понимаю, вопрос немного не по теме, но вот этот геморой с обычным автоинкрементом меня немного напрягает (может потомучто система для меня новая)
...
Рейтинг: 0 / 0
01.03.2005, 14:29
    #32938774
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
авторКто вам мешает в гриде списки и чекбоксы держать?
Я же написал: неудобно редактировать в гриде, если полей больше трех штук. Не видит юзер все данные сразу, поэтому ошибок больше и "производительность" меньше :)

По поводу блокировок - ну да, в фс ничего не спасет, если только выполнить update/insert отдельно.

автор2 tygra : скорей вопрос в том. как результат редактировая грида отправлять в базу. Я считаю правильным отравлять не построчно, а одной транзакций
Если вы говорите о клиентских транзакциях, и транзакции открываете перед началом редактирования и закрываете после, да еще после редактирования нескольких строк, то это самый неправильный способ :)
Или вы что-то иное имели ввиду?

-- Tygra's --
...
Рейтинг: 0 / 0
01.03.2005, 14:33
    #32938790
ASCRUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
tygra автор2 tygra : скорей вопрос в том. как результат редактировая грида отправлять в базу. Я считаю правильным отравлять не построчно, а одной транзакций
Если вы говорите о клиентских транзакциях, и транзакции открываете перед началом редактирования и закрываете после, да еще после редактирования нескольких строк, то это самый неправильный способ :)
Или вы что-то иное имели ввиду?
Я думаю человек имел ввиду кэшированные изменения (отложенное сохранение изменений данных).
...
Рейтинг: 0 / 0
01.03.2005, 14:47
    #32938837
ЛП
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
tygraЯ же написал: неудобно редактировать в гриде, если полей больше трех штук. Не видит юзер все данные сразу, поэтому ошибок больше и "производительность" меньше :)
Т.е. пока пользователь на грид просто смотрит - он все поля видит, а как только надо редактировать - тут же перестает поля видеть? Очень странная избирательность

В аксесе правда с этим проще. Там пользователь любой грид может перевести в режим просмотра/редактирования одиночной записи и обратно. Однако при этом меняется только внешний вид, привязка к данным, возможность редактирования и возможность перехода по записям никуда не изчезают

tygraПо поводу блокировок - ну да, в фс ничего не спасет, если только выполнить update/insert отдельно.
От чего надо спасать ФС? От блокировок?
Какая разница когда возникнет блокировка - в тот момент когда пользователь запись в гриде начнет сохранять, или в тот момент когда он из доп. формы запрос запустит (нажатием на кнопку)? И какая разница - ФС или КС?
...
Рейтинг: 0 / 0
01.03.2005, 15:06
    #32938934
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
авторТ.е. пока пользователь на грид просто смотрит - он все поля видит, а как только надо редактировать - тут же перестает поля видеть? Очень странная избирательность
Т.е. вы утверждаете, что сразу сможете увидеть полностью 15 полей в гриде? Без прокрутки по полям? Ну если так, то значит вы не землянин :))

-- Tygra's --
...
Рейтинг: 0 / 0
01.03.2005, 15:11
    #32938961
f_w_p
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Access или FireBird?
ЛПДля ФС - один хрен напрямую, что через доп.форму, что через грид.
С чего вы это взяли. Не зря ж писали такие функции как RecordToArray() и ArrayToRecord().

ЛПНе думаете же вы, что грид напрямую с mdf и ldf файлами работает (для MS SQL)?
А вот тут я с вами полностью согласен. В том то и дело, что не напрямую. И с разными серверами по-разному:-(.
...
Рейтинг: 0 / 0
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Access или FireBird? / 25 сообщений из 64, страница 1 из 3
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]