Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
 Re: Access или FireBird?  [new]
ЛП
Guest
tygra
автор
Т.е. пока пользователь на грид просто смотрит - он все поля видит, а как только надо редактировать - тут же перестает поля видеть? Очень странная избирательность

Т.е. вы утверждаете, что сразу сможете увидеть полностью 15 полей в гриде? Без прокрутки по полям? Ну если так, то значит вы не землянин :))

-- Tygra's --

Во-первых - 15 полей я увидеть могу. Могу даже и больше. Столбцы ресайзить я умею, шрифт менять тоже, да и монитор не двенадцатидюймовый.
Во-вторых. Я вообще-то не про просмотр спрашиваю, а про редактирование. Если у вас 200 полей каждое в полкилометра длиной - то вам эту радость неудобно просматривать в гриде. И скорее всего грид для просмотра не используется. В таком случае и редактировать через грид - не лучшее решение.
Однако если грид уже используется (для просмотра) - значит просматривать уже удобно. Т.е. все что нужно - влезает. Если все что нужно влезает - то почему это нельзя тут же и редактировать? Причем "нельзя" в суперкатегоричном тоне?

а лучше всего конечно дать пользователю выбирать - в чем ему удобнее работать, в гриде или в сингле.
1 мар 05, 15:16    [1353109]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
Рыжий Кот
Member

Откуда: Мягкий Диван; [забанен] Рустамом; [разбанен] П02;
Сообщений: 21678
Тигра,
а вот если нужно скопировать область из ехеля в tdbgrideh через copy/paste, вы тоже будете противиться?
(все хорошо работает, просто хочу спросить, как бы вы решили этот момент)

Картинка с другого сайта.
1 мар 05, 15:20    [1353139]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
ЛП
Guest
2 f_w_p
f_w_p
ЛП
Для ФС - один хрен напрямую, что через доп.форму, что через грид.

С чего вы это взяли. Не зря ж писали такие функции как RecordToArray() и ArrayToRecord().

Ээээ... это к чему?
Я утверждал, что даже если принять, что грид висит прямо на данных (что в общем-то неверно), и при сохранении измененной записи меняет данные напрямую, то и запрос, исполненный в ФС - точно так же прямо с клиента лезет напрямую к данным.
Так что для ФС процес редактирования и сохранения записи через грид и через допформу - принципиально не отличаются.
Причем здесь RecordToArray?

f_w_p
ЛП
Не думаете же вы, что грид напрямую с mdf и ldf файлами работает (для MS SQL)?

А вот тут я с вами полностью согласен. В том то и дело, что не напрямую. И с разными серверами по-разному:-(.

Однако (как и в случае ФС) - примерно одинаково что для грида, что для своей кнопки?
1 мар 05, 15:23    [1353151]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
ЛП
Guest
Рыжий Кот
Тигра,
а вот если нужно скопировать область из ехеля

Тссс...
tygra в экселе не работает. Потому что там 256 полей, а tygra больше 15 не видит :)
1 мар 05, 15:27    [1353171]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
автор
Во-первых - 15 полей я увидеть могу. Могу даже и больше. Столбцы ресайзить я умею, шрифт менять тоже, да и монитор не двенадцатидюймовый.
Во-вторых. Я вообще-то не про просмотр спрашиваю, а про редактирование

О! Так я и говорю - полностью 15 полей увидеть. Наверняка редактировать вы будете не на ресайзенных полях :)
автор
Однако если грид уже используется (для просмотра) - значит просматривать уже удобно. Т.е. все что нужно - влезает. Если все что нужно влезает - то почему это нельзя тут же и редактировать? Причем "нельзя" в суперкатегоричном тоне?

Очень странный вывод.
Из того, что используется грид можно сказать только то, что он используется. Но никак, что это удобно. Ответ простой - а кроме грида ничего нет для просмотра списков данных Поэтому грид используется всегда и везде, как единственная возможность показать много строк. Поля ресайзить, передвигать и т.д. - это все лишь для того, чтобы хоть как-то было лучше видно, хотя бы часть.
Но редактировать - это совсем другое дело. При редактировании данных желательно, чтобы юзер видел все данные одновременно, без всяких скроллирований колонок и по возможности длина компонентов, в которых редактируют данные, должна быть не меньше. Это все в гриде почти никогда не получится (если только 2-3 поля в нем всего, но и в этом случае смысла нет менять технологию). Ну и к тому же, форма с гридом - это просмотр и все, что с ним связано, а для редактирования отдельная форма, чтобы не мешать в кучу.

Категорично, не категорично - удобно. И для меня, и для юзеров.

автор
Тигра,
а вот если нужно скопировать область из ехеля в tdbgrideh через copy/paste, вы тоже будете противиться?
(все хорошо работает, просто хочу спросить, как бы вы решили этот момент)

Не знаю, как бы решил. Ну на такой крайний случай можно и в гриде - это если только такая операция производится, copy/paste. Если это лишь частный случай, иногда возможный, ввода данных - то без грида.

-- Tygra's --
1 мар 05, 15:52    [1353285]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
Да, кстати, я в экселе действительно не работаю :)) Не люблю я его. Только если отчеты какие в него скопировать и отослать. И все.

-- Tygra's --
1 мар 05, 15:53    [1353293]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
Alexey Sh
Member

Откуда: SPB
Сообщений: 1930
tygra

автор
2 tygra : скорей вопрос в том. как результат редактировая грида отправлять в базу. Я считаю правильным отравлять не построчно, а одной транзакций

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

-- Tygra's --


Я этого не говорил. Я говорил, что в случае использования грид можно изменения каждой строки не отправлять немедленно в базу(неважно какую, кс или фс) . Отправлять изменения - одной транзакцией .
В этом случае не вижу никакой разницы между кс и фс
1 мар 05, 16:02    [1353340]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
Что в вашем понимании есть транзакция?

То, о чем вы говорите, действительно похоже на кэшированные изменения. И транзакции - это механизм кэшированных изменений, но к БД они ни коим образом не относятся, там свои транзакции.
Но лично я не вижу смысла. Только неудобство:
1. нужно все время проверять, посылать ли, не посылать все строки, которые меняли/добавляли.
2. в БД должна быть актуальная информация, а то, что какая-то запсиь будет ждать 10 других, есть некарашо, остальные то клиенты ее не видят.
3. какой смысл городить городушки в принципе?

-- Tygra's --
1 мар 05, 16:12    [1353386]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
ЛП
Guest
Alexey Sh
Я говорил, что в случае использования грид можно изменения каждой строки не отправлять немедленно в базу(неважно какую, кс или фс) . Отправлять изменения - одной транзакцией .

То же самое можно сделать и для редактирования через форму. С точки зрения взаимодействия с БД абсолютно параллельно - грид или не грид.

Только для того чтобы изменить одно и то же поле в десяти записях - придется форму десять раз открыть, десять раз мышью в нужное поле на форме ткнуть, десять раз форму закрыть, потом уже отправить все изменения. Утверждается что это удобно Картинка с другого сайта.

А у меня пользователи или из экселя столбец копируют, или один раз нажимают стрелочку вниз после редактирования строки.

З.Ы. Что тут про зависшие блокировки и разрушенные индексы пытались сказать - так и не понял.
1 мар 05, 16:13    [1353391]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
Alexey Sh
Member

Откуда: SPB
Сообщений: 1930
2 tygra : называйте кэшированными изменениями, по барабану.

транзакция окажется и прикладной и субд одновременно.
1 мар 05, 16:47    [1353565]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
Alexey Sh
2 tygra : называйте кэшированными изменениями, по барабану.

Так вы все же сами то знаете, чего применяете?

Alexey Sh
транзакция окажется и прикладной и субд одновременно.

Так не бывает :)) Или-или. Вы тогда уж расскажите вкратце, как вы это делаете. А то вдруг вы транзакцию в БД открываете перед началом редактирования а коммитите после окончания редактирования 10-ой записи - но тогда это полный кошмар. Надеюсь, у вас не так?


ЛП
Только для того чтобы изменить одно и то же поле в десяти записях - придется форму десять раз открыть, десять раз мышью в нужное поле на форме ткнуть, десять раз форму закрыть, потом уже отправить все изменения. Утверждается что это удобно

А что, у вас на скорость записи редактируют? :)
Юзер не блоха, ко всему привыкнет

-- Tygra's --
1 мар 05, 16:58    [1353611]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
Alexey Sh
Member

Откуда: SPB
Сообщений: 1930
2 tygra : я даю себе отчёт в сходстве и различиях между транзакциями СУБД и бизнес-транзакциями. Повторяю , я нигде не говорил об открытии СУБД транзакции при открытии формы.
1 мар 05, 17:00    [1353616]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
ЛП
Guest
А что, у вас на скорость записи редактируют? :)
Юзер не блоха, ко всему привыкнет

Не, не на скорость. Скорость сама по себе никого не интересует.
Юзера записи редактируют на время. Которое деньги.
1 мар 05, 17:01    [1353619]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
Вы говорили про транзакцию. Откуда я знаю, что вы на самом деле под этим понимаете, но так как разговор идет о работе с БД, то вывод сам собой напрашивается.
В третий раз закинул невод.... Э, не то :). В третий раз уже спрашиваю, что вы под этим понимаете конкретно в этом топике и прошу уже примера. :)

-- Tygra's --
1 мар 05, 17:03    [1353627]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
Alexey Sh
Member

Откуда: SPB
Сообщений: 1930
2 tygra :

Попытаюсь ответить.
1) Пользователь открывает документ состоящий из шапки и многострочного тела, отображаемого в гриде. Начата бизнес-транзакция.

2) пользоваеьтель резвится с документом как может, шапку ,грид правит, из эселя данные копирует и т д. Без всяких изменений в базе.

3) Пользователь давит кнопку сохранить. Открывается СУБД транзакция , проверяется, что данные выданные пользователю никем не были изменены,
СУБД транзакция коммитися. Если СУБД-коммит успешен, бизнес-транзакция считается завершённой успешно.

Если пришлось сделать СУБД роллбэк, производится откат бизнес транзакции , всё что наредактировал пользователь теряется. Бизнес-транзакция откатывается

P.S. разницы в реализации между фс и кс - не вижу
1 мар 05, 17:17    [1353700]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
Ну так бы сразу и сказали, что речь идет о документе типа "счет-фактура" и т.д. :)

А говорили то об редактировании вообще, поэтому никак и не прикручивалось никуда: ну есть 100 записей, нужно отредактировать 13, где тут "транзакция на все записи".... :)

-- Tygra's --
1 мар 05, 17:23    [1353720]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
Alexey Sh
Member

Откуда: SPB
Сообщений: 1930
2 tygra : уфф, наконец договорились :)
1 мар 05, 17:34    [1353757]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
f_w_p
Member

Откуда:
Сообщений: 1603
ЛП
Что тут про зависшие блокировки и разрушенные индексы пытались сказать - так и не понял.

Да дело то было в 1991-1994гг. Качество сетей соответствующее, упс-это был возглас удивления, а не UPS. Только пользователи были такими же как и сейчас:-(.
ПО - MSDOS+Clipper(FoxPro,Paradox,CodeBase и т.д.). Поэтому редактирование было таким - копировалась запись в массив. Затем редактировался массив. Затем массив возвращался в запись, к-рая перед этим блокировалась. Т.о. если произошел сбой сети или пользователь просто выключил компьютер или ушел на обед, то никаких блокировок или неперестроенных индексов нет.
P.S. А с 1995 года свалил на КС. И вам советую.
2 мар 05, 08:42    [1354640]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
alex_k
Member

Откуда: krasnoyarsk
Сообщений: 6694
не всякий грид отображает данные подлежащие непосредственному редактированию.
частенько это поля вычисляемые тем или иным образом. и редактируются они редактированием нескольких других полей таблицы или даже нескольких записей нескольких таблиц.
про скорость ввода. делается это не так уж и сложно, пользователь долбит в строку, открывается форма, где в нужном порядке идут поля для заполнения.
ентерогм или табом пользователь скачет по полям и все заполняет, затем долбит или ок или отмену если что-то не так. на удобство или скорость такая форма работы не влияет. потому что скорость открытия нового окна много больше скорости реакции человека :-)
2 мар 05, 10:41    [1355007]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
ЛП
Guest
2 f_w_p
Современные гриды (с которыми я сталкивался) так и работают - используют буфер для новых значений, и сбрасывают изменения именно в момент сохранения записи. Оптимистическую блокировку тоже умеют выставлять.
Если в клиппере это было не так - ну значит действительно приходилось извращаться.
Спасибо за разъяснения.

2 alex_k
Вам домашнее задание.
Откройте любой экселевский документ. Возьмите какой-нибудь числовой (к примеру) столбец, и измените значения в этом столбце в десяти подряд идущих строках. Рискну предположить, что ваши действия будут выглядеть как [ввел число - нажал Enter]*[10 раз]

Теперь представьте, что на каждое изменение вам пришлось бы даблкликаться в строку, открывалась бы форма, где были бы отображены значения всех полей в этой строке, находить нужное текстовое поле, изменять там значение, закрывать форму.
Представьте, что надо было ввести не 10, а 100 чисел.

Если после этого вы продолжите утверждать, что скорость и удобство ввода не меняются потому как скорость реакции человека низкая и сам человек тормозит на открытии/закрытии формы - то я просто не завидую вашим пользователям :).
2 мар 05, 11:58    [1355417]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
2 ЛП
Ну если конкретный пользователь только и занимается, что правит один столбец в десятках строк и только этим, то конечно ему проще сделать правку в гриде. Но говорить, что так нужно делать всегда - ИМХО не есть хорошо :)

-- Tygra's --
2 мар 05, 12:24    [1355570]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
ЛП
Guest
2 tygra
А если пользователь занимается только тем, что правит одну запись, да с еще с пятью десятками полей - то ему и отображать эти данные в гриде не нужно.

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

Но говорить, что так нужно делать всегда - ИМХО не есть хорошо :)

Согласен. Но я и не утверждал, что в гриде всегда удобнее редактировать. Это обратные утверждения были - что в гриде всегда ("кроме особых случаев") нехорошо и неудобно. И даже была рекомендация "не позволяй пользователю редактировать/добавлять записи прямо в гриде" (с) alex_k. Т.е. даже если пользователю удобнее - все равно не позволяй Картинка с другого сайта.
2 мар 05, 12:47    [1355671]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
автор
А если пользователь занимается только тем, что правит одну запись, да с еще с пятью десятками полей - то ему и отображать эти данные в гриде не нужно.

Эээээ, а как искать то эту запись без грида? :)) К примеру, хотя бы ФИО и мыло у клиента нужно в грид вывести, а уж дальше нашел запись - открыл форму. Как иначе то? Все 50 полей в грид конечно выводить не надо, все-равно пока последнее домотаешь, что было вначале забудешь :).

-- Tygra's --
2 мар 05, 14:44    [1356411]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
ЛП
Guest
tygra
Эээээ, а как искать то эту запись без грида? :))

Дык эта... Ctrl-F рулит :)
а уж дальше нашел запись - открыл форму

Со своей аксесовской колокольни я даже не сразу понял, о чем речь то идет
У меня это выглядит как "открыл форму - нашел запись"

В аксесе форма может быть в виде грида (datasheet), и она же в виде формы на одну запись (single form). В любом виде она все равно висит на полном наборе данных, только режим отображения разный (либо куча записей в виде грида, либо одна запись в каком хошь виде). Т.к. набор данных - весь, то и навигация по нему, поиск, фильтрация, сортировка и т.п. - ничем не отличаются.
Надо в режиме Single Form отфильтровать по фамилии, отсортировать по имени, и найти запись с нужным е-мейл - вводишь фильтр для одного поля, делаешь сортировку по другому, и поиск по третьему, не выходя из режима Single Form. Набор данных отфильтруется, отсортируется и отпозиционируется на первое совпадение. В каком виде этот набор отображается (single form или datasheet) - совершенно не важно. В каком виде удобнее - в том виде и отображается. И редактируется.
2 мар 05, 15:16    [1356630]     Ответить | Цитировать Сообщить модератору
 Re: Access или FireBird?  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
Ну вот и договорились :)
Методы те же, но с разных сторон :)

-- Tygra's --
2 мар 05, 15:36    [1356762]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить