Макросы. Прерывание связи между двумя таблицами

kaol
Дата: 02.11.2009 11:49:14
Здравствуйте,

есть ли макрос, который разрывает связь между таблицами, а потом после импорта новых данных опять их связывает?

Спасибо, Ольга
отакота
Дата: 02.11.2009 12:09:44
kaol
Здравствуйте,

есть ли макрос, который разрывает связь между таблицами, а потом после импорта новых данных опять их связывает?

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

Создать или удалить связь между таблицами можно, к примеру, методами объектов DAO. Если написать сответсвующие процедуры и оформить их запуск в нужной последовательности вместе с запуском вашего импорта в виде цепочки макрокоманд в одном Макросе, то запустив его, вы выполните требуемую последовательность действий. А еще лучше, если уж вы решите писать VB-код, вообще не делать макросы, а сразу писать эти вызовы в обработке события нажатия какой-то кнопки.


Кстати, подозреваю, что подноготная вопроса кроется в ином. А вот зачем вам такая хитрая манипуляция с удалением/воссозданием связи? Не потому ли, что импорт при выполнении РУГАЕТСЯ на нарушение правил целостности этой связи? Если так, то вы избрали странный способ решения этой проблемы. Ведь если вы удалите связь, обойдете эти правила и импортируете НЕцелостные данные, то следом вы уже НЕ сможете заново создать эту связь - по той же самой причине, по которой вам сейчас не дают импортировать данные - из-за нарушения правил связи.

Так что подумайте глубже.
Владимир Саныч
Дата: 02.11.2009 12:19:09
отакота
Не потому ли, что импорт при выполнении РУГАЕТСЯ на нарушение правил целостности этой связи?

Может быть, ругается не импорт, а стирание перед импортом.
отакота
Дата: 02.11.2009 12:28:45
Владимир Саныч
отакота
Не потому ли, что импорт при выполнении РУГАЕТСЯ на нарушение правил целостности этой связи?

Может быть, ругается не импорт, а стирание перед импортом.
Такое тоже может быть. Не исключено также, что ругается еще и начальство. Надеюсь, автор пояснит, ругается ли у них вообще хоть кто-нибудь, а то может мои подозрения как всегда, излишне параноидальны
П-Л
Дата: 02.11.2009 12:55:15
Но я бы лучше сделал удаление и вставку новых данных в "правильом" порядке, учитывающем связи таблиц.
kaol
Дата: 02.11.2009 14:50:23
отакота,



мне нужно обновлять/замеенять (иногода дополнять) там информацию, а другого способа я не знаю. Как импортировать, разрывать связь, связывать.

Ольга
П-Л
Дата: 02.11.2009 15:08:08
Барышня, может вам лучше идти щи варить ? Ну или борщ ?
kaol
Дата: 02.11.2009 18:49:36
П-Л,

может быть и лучше. А Вам бы, уважаемый, чуткости научиться.
П-Л
Дата: 02.11.2009 18:57:11
Так и пойдем вместе учиться. Я - чуткости, вы - кулинарному искусству.
отакота
Дата: 02.11.2009 19:14:15
Автор, вы не ответили - ПОЧЕМУ вы вообще хотите удалять связь на время импорта? какова причина? Зачем ее трогать, ведь ограничения связи для того создаются, чтобы нельзя было разных косяков в базе наплодить. Связь за этим пристально следит. А то что предлагаете вы - это как бы "напоить сторожа", и пока он в отключке, порезвиться на охраняемом объекте. ИМХО, это какое-то превратное понимание учения о целостности баз данных.