Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Коды ошибок провайдера. [D7, MSSQL]


Страницы:   1 2 3

Bless ©   (2006-08-18 15:13:00) 

Где можно узнать перечень сабжей с текстовым описанием для SQL Server-а?
Может искать не умею, но поиск по MSDN ничего не дал.


sniknik   (2006-08-18 16:07:00) [41]

указываеш тип обновлений по ключу. а не всей записи (Properties['Update Criteria'].Value:= adCriteriaKey, можно в "афтеропен" например )... мало того что ошибки не будет так еще и быстрее работать будет.


Ega23   (2006-08-18 16:00:00) [42]


> Этот вариант в данном случае мне не подходит. Высокий Isolation
> Level приведет к ненужным блокировкам.


Тогда отдельную таблицу блокировок записей по разным клиентам.


Bless   (2006-08-18 15:51:00) [43]


> Ega23 ©   (18.08.06 15:37) [4]
> Транзакцию с соответствующим Isolation Level выставлять
> надо. И не будет таких ошибок.


Этот вариант в данном случае мне не подходит. Высокий Isolation Level приведет к ненужным блокировкам.


Ega23   (2006-08-18 15:37:00) [44]


> Собственно говоря меня интересует, как отловить эту самую
> Row cannot be located for updating. Some values may have
> been changed since it was last read


Транзакцию с соответствующим Isolation Level выставлять надо. И не будет таких ошибок.


Bless   (2006-08-18 15:35:00) [45]

Собственно говоря меня интересует, как отловить эту самую
Row cannot be located for updating. Some values may have been changed since it was last read

Думаю приблизительно так
try
 q.post
except
     on E: EDataBaseError do begin
        if q.connection.Errors.Count=1 then
          if q.connection.Errors[0].NativeError=32 then ...//тут типа отловил
          else raise;
     end;
     ...
end;{try}


Но гнетут сомнения, а вдруг код 32 имеет еще какая-нибудь ошибка или на факт изменения записи в базе со времени моего запроса провайдер реагирует еще как-нибудь кроме Row cannot be located for updating. S


Bless   (2006-08-18 15:28:00) [46]


> sniknik ©   (18.08.06 15:19) [1]


Это не подходит. Например, ошибку Row cannot be located for updating. Some values may have been changed since it was last readгенерирует не sql-сервер, а провайдер, видимо.


sniknik   (2006-08-18 15:19:00) [47]

BOL -> xxx (error)
где xxx цифра или период.


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо