Почему блокируются пользователи?

Дмитрий М+
Дата: 28.01.2003 17:37:35
Пожалуйста помогите с решением задачи.
Delphi + ADO + MSSQL 7.0
Код на клиенте
BeginTrans;
Query1.Insetr;
Query2.Insetr;
Query3.Insetr;
Button1Click(CommitTrans) Button2Click(RollbackTrans)
Между BeginTrans;и CommitTrans(RollbackTrans); проходит достаточное время -
пользователь вносит данные врукопашную.
Запрос с другой рабочей станции типа
Select * from Tbl1 t1 Tbl2 t2
where условие
виснет пока не происходит CommitTrans(RollbackTrans) на первой.
Перехожу с InterBase - там такого не наблюдалось.
Как надо сделать правильно ПОМОГИТЕ.
tygra
Дата: 28.01.2003 18:04:42
Переход с IB на MS SQL очень болезнен - много разного

Первое:

про вот такое:
Код на клиенте 

BeginTrans;
Query1.Insetr;


лучше сразу забудь, а то потом хуже будет - так не нужно делать

2. Делается все через хранимые процедуры

3. Почитай книги по MS SQL
Дмитрий М+
Дата: 28.01.2003 18:06:25
Спасибо tygra
Cooper
Дата: 28.01.2003 18:19:14
2 tygra

А как через х.процедуры?

Например, как получить набор записей и, чтобы другие юзеры не могли этот набор даже прочитать? Через Хинты не получается.:(
tygra
Дата: 28.01.2003 18:29:30
А зачем?????????????????????????????
hDrummer
Дата: 28.01.2003 18:29:32
права на х.п. даёшь и вперёд
tygra
Дата: 29.01.2003 11:41:24
Например, как получить набор записей и, чтобы другие юзеры не могли этот набор даже прочитать?


С логикой и структурой программы что-то у тебя - такого обычно не допускают. Зачем ????