Вниз
Скачать: CL | DM;

Помогите с Locate///   Найти похожие ветки 

← →
Vats   (2002-09-10 10:32) [0]

При переводе базы данных с Access 97 на MS SQL 2000(соединение ODBC-BDE) возникла проблема: функции Locate и Lookup не срабатывают на таблицах с большим количеством полей (в нашем случае, в качестве аргумента передается 10 полей).Но при установки свойства CachedUpdate в true Locate срабатывает, но запись в базу не происходит при добавление.


← →
VAleksey ©   (2002-09-10 11:48) [1]

ApplayUpdates вызываешь ?
В режиме кэшированных обновлений это нужно делать чтобы изменения сохранялись.


← →
KMZ   (2002-09-10 12:01) [2]

а по конкретней не можешь написать


← →
Vats   (2002-09-10 14:05) [3]

Проблема в следующем:
в рамках выполнения транзакции (при установленном CachedUpdate=false для таблицы)осуществляетвляется добавление и редактирование записей в таблице. В случае успешного выполнения транзакция подтверждается, в противном откатывается.
Внутри этого блока используется Locate для поиска записи(при коректной работе Locate и не нахождении записи должно осуществится добавление записи в таблицу), а т.к. Locate не сработал и не нашел запись в таблице программа пытается добавить эту запись в таблицу, а на ней стоит индекс из 10 полей и сервер начинает ругатmся.
Дело в том, что для простых таблиц Locate срабатывает, а для таблице на которой стоит индекс из 10 полей, он работать не хочет!!! Почему и причем здесь CachedUpdate?



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.016 c
1-98117
RV
2002-09-17 10:05
2002.09.30
Где у меня происходит утечка памяти? (менеджер задач так


3-97947
maxim2
2002-09-09 06:33
2002.09.30
При добавлении записи выдает ошибку Key violation


1-98059
BOBAH
2002-09-18 16:41
2002.09.30
Как свернуть приложение в SystemTray?


4-98402
ssv
2002-08-13 14:09
2002.09.30
WNetGetResourceParent


1-98142
TopGun
2002-09-16 20:21
2002.09.30
Глючит программа




   Наверх