|
|
|
Как за лочить таблицу из Access2000 в MS SQL2000
|
|||
|---|---|---|---|
|
#18+
Есть некоторый алгоритм, по которому надо заблокировать от изменения 1 таблицу. Что-то у меня голова кругом идет. Если открою набор как пессимистический, то этого будет достаточно до его Close/Nothing или нет? Вариант с временными таблицами не пройдет (а может и пройдет, если изменить программу - но это накладно). Что я бы хотел: 1. Залочить таблицу от изменения данных, чтобы другие юзера не смогли выполнять обработку пока я не солью свои данные. 2. Очистить оную 3. Через рекодсет добавить туды данные (работа через рекодсет ведеться из-за логики программы, забирающая данные из не нормализованного файла Excel) 4. Полученные данные добавить в главную таблицу 5. Разлочить таблицу и тем самым разрешить разрешить другим закачивать данные Извините, если сумбурно описал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:07 |
|
||
|
Как за лочить таблицу из Access2000 в MS SQL2000
|
|||
|---|---|---|---|
|
#18+
Если открою набор как пессимистический, то этого будет достаточно до его Close/Nothing или нет Нет. Пессимистическая блокировка (видимо она имеется в виду) действует только на изменяемую запись (страницу) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:14 |
|
||
|
Как за лочить таблицу из Access2000 в MS SQL2000
|
|||
|---|---|---|---|
|
#18+
залочить то таблицу можно .... только это чревато всилу того что из за этой блокировки все у всех обращающихся к этой таблице подвиснет в ожидании пока не снимешь блокировку. begin transaction select * from MYTABLE with (TABLOCKX) TABLOCKX - это хинт режима блокировки, который устанавливает режим эксклюзивной блокировки таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:21 |
|
||
|
Как за лочить таблицу из Access2000 в MS SQL2000
|
|||
|---|---|---|---|
|
#18+
2 АлексейК Насколько я понимаю оно не прокатит если с таблицей кто-то работает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:34 |
|
||
|
Как за лочить таблицу из Access2000 в MS SQL2000
|
|||
|---|---|---|---|
|
#18+
>select * from MYTABLE with (TABLOCKX) Работа в основном ведеться через рекодсеты на клиенте (АДО) Не будет ли и мне мешать такая блокировка? Есть ли блокировка которая не будет блокировать чтение? Чем больше думаю - тем больше мне все это не нравиться. Ну заблокирую, а клиент возьми и отвалиться - и все, трындец. Ставить какой-либо признак в момент начала работы в некую служ. таблицу? Тогда см. выше - трындец будет не избежен. Проблемка, блин, пока пойду думать про временные таблицы, может это будут выход? Клиент крутит-вертит, а обновление будет быстрым (пары тысяч строк не более) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:45 |
|
||
|
|

start [/forum/topic.php?fid=45&tid=1680130]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
131ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 192ms |
| total: | 383ms |

| 0 / 0 |
