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

Вниз

1,2,3,... многопользовательский вариант   Найти похожие ветки 

 
AndrewVolkov   (2003-05-14 20:29) [0]

Доброго всем вечера
Вопрос следующего характера.

Многопользовательская база на 6 Интербейсе.
Проблема в следующем. Служит для регистрации людей (грубо говоря раз в месяц все повторяется)
Суть в следующем. Происходит регистрация людей, в итоге каждый должен получить свой номер. К примеру -1-ый, 2-ой, 3-ий
Через месяц то же самой повторяется. И опять надо начать нумерацию сначала, т.е. 1-ый, 2-ой и т.д.
Насколько я понимаю, генератор использовать неудобно, так как нумерация должна начинаться каждый раз с нуля. А вариант каждый раз к примеру брать max(NumberPeople), если первый клиентский комп запросит максимум - ему вернут к примеру 120, а через момент второй клиентский комп туда закинет запись В итоге получится клин 2 - 121 поля (а если по ним уникальный индекс, тогда ошибка)
Если кто сталкивался - как правильнее решить такую проблему???
Спасибо...


 
Zacho ©   (2003-05-14 21:02) [1]

Стандартный подход:
Редактирование номеров запрещено.
Удаление записей запрещено.
При вставке новой записи таблица блокируется до окончания вставки. По этому вопросу читать http://www.ibase.ru/devinfo/pslock.htm и http://www.ibase.ru/devinfo/ibtrans.htm


 
AndrewVolkov   (2003-05-15 00:21) [2]

Почитал - суть понял, как сделать не понял

Что я должен где поставить

если одной транзакцией хочу сделать
выбор мах(fields)
2-ой insert
commit

как на время выполнение этой транзакции запретить другим транзакциям вообще чтение таблицы, точнее чтобы они ждали



 
kaif ©   (2003-05-15 00:35) [3]

А почему нельзя сбрасывать генератор в 0 ?
SET GENERATOR my_generator TO 0


 
AndrewVolkov   (2003-05-15 00:43) [4]

с генератором как-то не хочется, удобнее в даном слчае было бы через маx(). Но не могу нигде найти, как сделать, чтобы транзакция ждала и не читала и не писала, пока эту таблицу не отпустит другая транзакция


 
AndrewVolkov   (2003-05-15 00:59) [5]

Все разобрался, большое всем спасибо
натолнули на мысль, что у меня под столом лежит книга по Интербейсу
Там все отлично расписано



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
1-3006
nesterovsky
2003-05-21 12:53
2003.06.02
Как перересовать одну запись в TListView и TTreeView


6-3038
Карелин Артем
2003-04-03 07:47
2003.06.02
Правила набора номера.


14-3149
Карелин Артем
2003-05-15 11:50
2003.06.02
Материалы по радиолокации. Где найти?


9-2730
VitGun
2002-12-19 21:32
2003.06.02
Спрайт


3-2738
АлексейТ
2003-05-13 00:07
2003.06.02
Работа с BDE