Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];

Вниз

Можно ли менять содержимое таблицы, если менятьг грид ADOQuery?   Найти похожие ветки 

 
12345   (2004-09-14 13:41) [0]

можно ли сделать так, чтобы если поменять данные в гриде (ADOQuery), то в таблице менялись соотв. данные?


 
Ega23 ©   (2004-09-14 13:44) [1]

Можно. Но, ИМХО, плохой стиль.


 
Sergey13 ©   (2004-09-14 13:44) [2]

Можно. Особенно если учесть что в гриде данных нет, он показывает данные таблицы.


 
12345   (2004-09-14 13:46) [3]

>Можно. Но, ИМХО, плохой стиль.
почему? как лучше это сделать?


 
Ozone ©   (2004-09-14 13:51) [4]

12345   (14.09.04 13:46) [3]

Отдельная форма для редактирования нужна, ИМХО


 
Ega23 ©   (2004-09-14 13:51) [5]

Лично я делаю отдельную форму по редактированию. 2 самых главных достоинства:
1. Выборку можно "презентабельную" делать, т.е. удобную для просмотра пользователем. Например: есть 3 таблицы - Сотрудники, Отделы и Организации. Выборка по персоналу будет включать в себя ФИО сотрудника, название отдела, название организации.
Как такую выборку редактировать в гриде?
2. Дураказащита. Сколько не бился над редактированием записей в гриде (больно специфическая задача была), а корректной дураказащиты таки не сумел сделать.


 
12345   (2004-09-14 13:53) [6]

>Отдельная форма для редактирования нужна, ИМХО

имеете ввиду dbedit"ы?


 
Ega23 ©   (2004-09-14 13:54) [7]

имеете ввиду dbedit"ы?

Лучше простые Edit"ы.


 
сергей1   (2004-09-14 21:05) [8]

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

тут надо по ситуации подходить, чтоб свести такие приколы к минимуму


 
Sergey13 ©   (2004-09-15 09:11) [9]

2[8] сергей1   (14.09.04 21:05)
Не пугай товарища, тем более выдумками.


 
Ega23 ©   (2004-09-15 09:27) [10]

Sergey13 ©   (15.09.04 09:11) [9]

Да уж какие тут выдумки...
Если открыл запрос with noLock - именно такая ситуация и будет


 
Sergey13 ©   (2004-09-15 09:31) [11]

2[10] Ega23 ©   (15.09.04 09:27)
А если открыл форму с едитами и курить ушел? Другая будет? Да и грид по этому поводу не ругается - это не его епархия. Можно и с гридом и с формой сделать и нормально и дров наломать - не зависит от средств визуализации.


 
Ega23 ©   (2004-09-15 09:34) [12]

Sergey13 ©   (15.09.04 09:31) [11]

А вот для этого надо держать в базе таблицу блокировок. И блокировать не всю таблицу, а только ДАННУЮ(!) запись. Тогда никто другой, пока он курит именно эту запись редактировать не сможет.


 
Sergey13 ©   (2004-09-15 09:36) [13]

2[12] Ega23 ©   (15.09.04 09:34)
А мое ИМХО - не надо на сервере блокировать без особой нужды. Он и сам с этим справляется неплохо. Тем более для редактирования одной записи.


 
Ega23 ©   (2004-09-15 09:50) [14]

Ты не можешь заблокировать ТОЛЬКО ОДНУ запись, играясь с isolation level. У тебя минимум страница (8К) заблокируется.


 
Sergey13 ©   (2004-09-15 10:01) [15]

2[14] Ega23 ©   (15.09.04 09:50)
Я говорю не про M$ сервер (который не знаю), а про сервер БД вообще (в Оракле например можно). Корректная работа с транзакциями и обработка ошибок решит все проблемы с блокировками и т.п. не зависимо от средств визуализации инфы. Другое дело, что проектирование и реализация программы очень зависит от условий эксплуатации (должна по крайней мере зависеть). И если предполагается, что к некоей инфе идет частое конкурентное обращение многих юзеров, то и интерфейсно это надо решать по другому нежели при "редко возможной" конкуренции.


 
Ega23 ©   (2004-09-15 10:08) [16]

Sergey13 ©   (15.09.04 10:01) [15]

Возможно ты и прав.



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

Форум: "Базы";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.033 c
10-1044343249
JibSkeart
2003-02-04 10:20
2004.10.10
приммеры COM DCOM на Bulder C++


3-1095243233
SeZuka
2004-09-15 14:13
2004.10.10
конвертирование базы FoxPro


1-1096062326
Mishenka
2004-09-25 01:45
2004.10.10
OnClick в StatusBar


14-1095818337
Думкин
2004-09-22 05:58
2004.10.10
С днем рождения! 22 сентября


3-1094638324
Zif
2004-09-08 14:12
2004.10.10
Как посчитать количество всех строк...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский