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

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

Банальный Table is busy [D5, Paradox]


Страницы:   1 2

AlexNord ©   (2003-11-25 07:49:00) 

Люди памажите плиз, смарите ситуация, создается 5 табличек и перед созданием удаляется, так вот почему то при удалении пятой Table is busy ? Active в false все действия как с предыдущими 4-мя и только с ней ошибка и нифига не могу сделать, даже удалял с дата модуля компонент TTable и заново создавал, а нифига не помогло!Переставлял винду све с нуля в общем я не знаю ваще уже чего делать.......


AlexNord   (2003-11-27 06:14:00) [1]

Всем спасибо за участие, я исправил багу, просто сменил имя таблички физическое, но вот ума не приложу, не могу найти где она зацепилась именно по старому имени...))СПАСИБО ВСЕМ!)


Vovchik_A   (2003-11-26 10:32:00) [2]

Где-то табличка твоя однозначно открыта - ищи баг в коде


Anatoly Podgoretsky   (2003-11-26 09:20:00) [3]

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


AbrosimovA   (2003-11-26 09:18:00) [4]

Однозначно занят физический файл, но вопрос: Кем или чем?
Либо у файла атрибут "Только чтение" либо приведи полный код работы с базами.
А проект не секретный, ты бы выслал, а я посмотрел.


AlexNord   (2003-11-26 09:07:00) [5]

TableName-тут имя физическое файла таблицы передается - Name_4 - это параметр процедуры...оно передается правильно...


AlexNord   (2003-11-26 09:06:00) [6]

нее не помогло...пойду повешусь блин..((( проект замер.(((


AbrosimovA   (2003-11-26 08:50:00) [7]

Вот у тебя код:

> DatM.Part5Kotl.Active:=False;
> DatM.Part5Kotl.TableName:=Name_4;

1-я строка закрывает таблицу Name_3.
2-я строка выбирает следующую таблицу Name_4.
Но дальше нет кода для закрытия Name_4.
Попробуй поменять местами 1-ю и 2-ю строки кода.


AlexNord   (2003-11-26 08:48:00) [8]

таблиц 5 когда первый раз они создаются все гладко с ними отрабатываются действия и при следующем вызове если не закрыть порграмму при удалении 5-й дается ошибка что она занята пока не пеерзапустишь программу......


AlexNord   (2003-11-26 08:30:00) [9]

AbrosimovA Перебробовали с колегами все...Закрыто все везде ...мы непонимаем что это почему так именно с этой таблой...(


AbrosimovA   (2003-11-26 08:25:00) [10]

А ты точно выполнил рекомендации
> chtr © (25.11.03 08:47) [5]
> Закрой делфи и запусти EXE
.
Нужно закрыть ещё и Database Desktop, SQL Explorer и т.д.
И ещё. Я не совсем понял - у тебя 5 таблиц или 12?


AlexNord   (2003-11-26 00:53:00) [11]

Я пробовал и в False его и в True, по барабану ему все...


AbrosimovA   (2003-11-25 12:59:00) [12]

А exclusive в каком состоянии на момент удаления?


AlexNord   (2003-11-25 12:15:00) [13]

Открыта или закрыта это Active ?? естесно оно в False ....


AbrosimovA   (2003-11-25 11:17:00) [14]

Перед удалением делай проверку - открыта или нет таблица.
Если закрыта - удаляй, если открыта - закрывай и удаляй.


AlexNord   (2003-11-25 09:31:00) [15]

а строка имя иднамическое взависимости от месяца может быть Part5Kotl1.db, Part5Kotl2.db и так далее до 12...TableName динамически присваивается....


AlexNord   (2003-11-25 09:19:00) [16]

Не не выходит все равно..( ЮЮ © (25.11.03 09:06) [8]


ЮЮ   (2003-11-25 09:06:00) [17]

>Нет для всех 5-ти свои
зачем тогда строка DatM.Part5Kotl.TableName:=Name_4;?

>создается 5 табличек и перед созданиемудаляется,

Все TableName следует установить в Инспекторе, а все Active установить в False. А Table.Open делать только в коде


AlexNord   (2003-11-25 08:55:00) [18]

С ексешником тоже самое.....(


AlexNord   (2003-11-25 08:53:00) [19]

"Ты используешь один компонент DatM.Part5Kotl для оаботы со всеми 5-ю таблицами?"
Нет для всех 5-ти свои ....


chtr   (2003-11-25 08:47:00) [20]

Закрой делфи и запусти EXE


Страницы:   1 2

Наверх

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