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

Обновление базы и ADO   Найти похожие ветки 

 
Bogus ©   (2002-07-31 16:28) [0]

Народ, зашиваюсь! Неужели никто не встречался!

Вопрос ушел на 3 страницу, посему, повторяю. Простите за назойливость.
[skip]
Bogus

SQLCommand : tADOCommand;
Query : tADOQuery;

SQLCommand.CommandText := "delete from <вторая> where
<ключ_первой> = " + <то,что нужно> ;
SQLCommand.Execute;
Query.Delete;

[skip]
>Jee
>На сколько я понял, ты хочешь удалить из "мастер" таблицы
>запись и в таблице "деталь" содержится запись со значением
>вшешнего ключа равному значению первичного ключа первой
>таблицы. Ясное дело, связь не позволит этого сделать. Сначала
>надо удалить из второй таблицы все записи, связанные с первой,
>а потом удалить из первой. Тогда в событии первой таблице
>BeforeDelete пишешь

> SQLCommand.CommandText := "delete from <вторая> where
> <внешний_ключ> = " + <Первая>.<первичный ключ>.<значение> ;
> SQLCommand.Execute;


>>Bogus
>>Верно, именно этого я и хочу. До твоей мысли я дошел, проблема
>>именно в том, что между SQLCommand.Execute и реальным
>>обновлением базы проходит несколько секунд. Т.е. получается,
>>что когда я выполняю delete, таблица "деталь" как-будто еще
>>содержит связанные записи.

Народ, мне это реально нужно. Иначе бы не приставал. Хотя бы где искать.


 
ACR ©   (2002-07-31 16:35) [1]

ясна падаждать нада пака не выпалнится первый запрос... а как падаждать?... а? транзакции наверна...?


 
nick_sniper ©   (2002-07-31 20:10) [2]

Есть метод дубовый, но надежный:

//< Твой код: обновление, удаление и т.д.>
ADOConnection.Active := false;
ADOConnection.Active := true;
//< открываешь заново нужные таблицы/запросы>


В результате железно видны все внесенные изменения, но на закрытие/открытие БД затрачивается не менее 0,1 сек.
Искал другие способы, типа: Requery, FlushBuffers, Refresh и т.д., но так и не нашел нормально работающего. Причем то, что указано у мелкософта по этому поводу - IMHO не работает.
Можно ещё попробовать отлавливать сообщения об обновлении БД.
Вообщем если найдешь какое-то красивое решение - мыльни, буду очень благодарен.



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

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



Память: 0.45 MB
Время: 0.01 c
3-71066
{bas}
2002-07-31 14:07
2002.08.22
Подключение к Access через ADO c запороленной базой


14-71333
Geser
2002-07-25 22:06
2002.08.22
Люди, подкиньте идею для программы.


14-71336
Виталий К.
2002-07-23 18:11
2002.08.22
Планировщик в Виндос 98


6-71279
nikk
2002-06-09 01:26
2002.08.22
NmSmtp


1-71120
Сережа
2002-08-05 11:05
2002.08.22
Запуск программы из значка или из значка в трее




   Наверх