Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Delphi+ODBC Visual Foxpro driver   Найти похожие ветки 

 
Виталий Панасенко   (2010-06-15 13:02) [0]

Программа на Делфи, подключаемся к БД (dbf) Visual FoxPro через ODBC драйвер. Пытаюсь удалить данные из таблицы, затем ее упаковать.
[SRC]
     cmdPack.CommandText := "delete from olorderh";
     cmdPack.Execute();

     cmdPack.CommandText := "delete from olorderd";
     cmdPack.Execute();

     cmdPack.CommandText := "pack olorderh";
     cmdPack.Execute();

     cmdPack.CommandText := "pack olorderd";
     cmdPack.Execute();
[/SRC]
Данные удаляются, но упаковка не проходит по причине "Ашду in use". Возможно ли как-то решить эту проблему, или нужно для  ADOConnection сделать Connected := False И лишь потом паковать? Т.е. если я к таблицам НЕ обращаюсь, упаковка проходит удачно. Но нужен именно такой сценарий - это транспортные файлы и после их обработки нужно их очистить для повторного использования


 
sniknik ©   (2010-06-15 13:11) [1]

> delete from olorderh
> pack olorderh
= zap olorderh

вроде бы, если не забыл.


 
sniknik ©   (2010-06-15 13:12) [2]

+ обработка, если есть выборки то делать не select, а use.


 
Виталий Панасенко(дом)   (2010-06-15 13:17) [3]

zap не канает...для VFP драйвера


 
sniknik ©   (2010-06-15 14:35) [4]

> zap не канает...для VFP драйвера
странно весьма... т.к. это вариация pack, даже описываются в одном разделе.


 
Anatoly Podgoretsky ©   (2010-06-15 14:35) [5]

> Виталий Панасенко  (15.06.2010 13:02:00)  [0]

А почему не OLEDB?


 
Anatoly Podgoretsky ©   (2010-06-15 15:07) [6]

> sniknik  (15.06.2010 14:35:04)  [4]

Вообще то, что то в этом есть, я уже читал подобное.


 
Виталий Панасенко   (2010-06-15 15:25) [7]


> Anatoly Podgoretsky ©   (15.06.10 14:35) [5]

Одна учетная система создает системные DSN, с конкретными именами и драйверами. И уже с ними работает...И нужно организовать импорт/экспорт между двумя не связанными системами. Тут хранятся только транспортные данные.. Одна система выдала на гора, вторая втянула и, при удачном импорте, очистила таблицы


 
Anatoly Podgoretsky ©   (2010-06-15 16:03) [8]

> Виталий Панасенко  (15.06.2010 15:25:07)  [7]

А что постоянно создаются новые?


 
Виталий Панасенко   (2010-06-15 16:35) [9]

да нет, только зачем что-то еще создавать..
вот, порылся, нашел направление..но вторую таблицу все равно не пакует
cmdPack.CommandText := "set exclusive on;"#13#10" delete from olorderh;"#13#10"pack;"#13#10"delete from olorderd;"#13#10" pack;"#13#10" set exclusive off;";
     cmdPack.Execute();


 
sniknik ©   (2010-06-15 16:48) [10]

Remarks

Changing the setting of SET EXCLUSIVE doesn"t change the status of previously opened tables. For example, if a table is opened with SET EXCLUSIVE set to ON, and SET EXCLUSIVE is later changed to OFF, the table retains its exclusive-use status.

SET EXCLUSIVE is scoped to the current data session.


 
Правильный$Вася   (2010-06-15 16:58) [11]


> это транспортные файлы и после их обработки нужно их очистить
> для повторного использования

в таких случаях лучше не насиловать систему, а просто стереть файлы и создать (скопировать) пустые нужной структуры
быстрее и без мороки


 
Виталий Панасенко   (2010-06-15 17:55) [12]


> Правильный$Вася   (15.06.10 16:58) [11]

я об этом уже думал... их около 60 таблиц... но нужных мне много меньше


 
Anatoly Podgoretsky ©   (2010-06-16 08:54) [13]

> Виталий Панасенко  (15.06.2010 17:55:12)  [12]

И все таки попробуй OLEDB это прозрачно, сменить только строку подключения,
конечно если каких либо трюков не используешь. Обычно после этого начинает
работать.



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

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.075 c
15-1324935817
Германн
2011-12-27 01:43
2013.03.22
eBook


15-1346016093
Artem
2012-08-27 01:21
2013.03.22
Не поможете с Visual C++?


15-1344793658
Artem
2012-08-12 21:47
2013.03.22
Помогите решить задачу


15-1351157732
cobalt
2012-10-25 13:35
2013.03.22
Зеленое окошко вместо видео.


2-1338711145
Разветка
2012-06-03 12:12
2013.03.22
как заставить выполнить полность все условия





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский