Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Record in use by another / 6 сообщений из 6, страница 1 из 1
19.07.2004, 07:13
    #32609773
LightWarrior
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Record in use by another
Ситуация такая
Регулярно появляется ошибка (см.сабж)
код в этих местах такой
Код: plaintext
1.
2.
3.
if !used('cur')
   use (path+'cur.dbf') in  0  shared alias 'cur'
endif 
никто другой эту таблицу не трогает, кроме самой программы
Если кто с этим встречался и победил - поделитесь
...
Рейтинг: 0 / 0
19.07.2004, 08:35
    #32609804
Hel!Riser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Record in use by another
может лок с записи не снят, может табличка твоя уже открыта тока под другим альясом. попробуй
Код: plaintext
USE (path+'cur.dbf') IN  0  SHARED AGAIN ALIAS 'cur'
...
Рейтинг: 0 / 0
19.07.2004, 08:50
    #32609814
LightWarrior
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Record in use by another
да, иногда бывает что база открывается с алиасом состоящим из произвольных букв и цифр хотя везде, где открываются таблички используется слово 'alias'. Again попробую, но не уверен в эффекте
...
Рейтинг: 0 / 0
19.07.2004, 10:58
    #32610055
Sergey Ch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Record in use by another
1. Лично я бы не трогал сочетание CUR - оно напоминает зарезервированное слово CURSOR :(
2. можно попробовать и так:

Код: plaintext
1.
2.
3.
4.
5.
set exclusive off
if !used('TMPCUR')
   use (path+'cur.dbf') in  0  shared alias TMPCUR
else
  select TMPCUR
endif 
...
Рейтинг: 0 / 0
19.07.2004, 11:36
    #32610175
LightWarrior
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Record in use by another
2Sergey Ch :
Спасибо, но в этом примере "cur" - просто для примера взято, на самом деле имена другие и подобная ошибка возникает с разными алиасами. эксклюзив отключен изначально. Я думаю что в процессе очень частого открытия и закрытия баз (при обработке довольно большой таблицы {десятки тысяч записей} на каждую запись создается объект , один из методов которого и содержит данный код.) foxpro как-то хитро буферизирует или кэширует открываемые таблицы.
...
Рейтинг: 0 / 0
19.07.2004, 13:05
    #32610404
Hel!Riser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Record in use by another
не, если же таблица открывалась ранее - фсяка нужен AGAIN
(c) хельп
To open a table _concurrently_in_multiple_work_areas_, you can do one of the following:
-Select another work area and issue USE with the table name and the AGAIN clause.
-Issue USE with the table name and the AGAIN clause, and specify a different work area with the IN clause.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Record in use by another / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]