Форум: "Базы";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];
ВнизИзменения значения отдельной ячейки в двох таблицах Найти похожие ветки
← →
Death_R (2005-08-15 18:21) [0]Есть две таблицы (TTable). Есть у них две одинаковых поля. И вот я меняю значение поля в одной таблице и мне нужно чтобы поменялось значение этого же поля в этой же записи в другой таблице. Как можно это организовать?
← →
Desdechado © (2005-08-15 19:00) [1]сменить структуру БД, применив правила нормализации
← →
Anatoly Podgoretsky © (2005-08-15 21:12) [2]Два раща подряд.
← →
Mike Kouzmine © (2005-08-15 23:11) [3]На 1 изменяемое поле поставь onChange или Before(After)Post, по обстоятельствам, и изменяй там 2 поле. А вообще см 1.
← →
evvcom © (2005-08-16 08:47) [4]Все татары кроме я. :)
> мне нужно чтобы поменялось значение этого же поля в этой
> же записи в другой таблице
В другой таблице нет ЭТОГО же поля ЭТОЙ же записи. Могут быть другие, аналогичные, но не ЭТИ же.
← →
Death_R (2005-08-16 10:14) [5]
> Desdechado © (15.08.05 19:00) [1]
> сменить структуру БД, применив правила нормализации
В моем случае это не применимо, т.к. у меня первая таблица используется как некий шаблон по умолчанию, но мне нужно чтобы при изменении в ней менялись значения в другой таблице!!!!
> Mike Kouzmine © (15.08.05 23:11) [3]
> На 1 изменяемое поле поставь onChange или Before(After)Post,
> по обстоятельствам, и изменяй там 2 поле. А вообще см 1.
Пробывал, но при вставке кода в обработчик блокируется поле с которого вызывается обработчик
> evvcom © (16.08.05 08:47) [4]
Привожу пример.
В первой талице есть запись с ID=125 и во второй таблице есть запись с ID=125. В обеих таблицах есть поле WORK..........
← →
Sergey13 © (2005-08-16 10:18) [6]2[5] Death_R (16.08.05 10:14)
> Пробывал, но при вставке кода в обработчик блокируется поле с которого вызывается обработчик
Приведи код.
← →
evvcom © (2005-08-16 10:23) [7]
> Привожу пример.
Я то понял. Только это все равно не ОДНИ и ТЕ же записи, это аналогичные записи.
> у меня первая таблица используется как некий шаблон по умолчанию
Что же это за шаблон такой? Вообще-то при смене шаблона данные в рабочих таблицах меняться не должны. Вероятно, то, что тебе надо, в БД принято называть справочником. Что такое нормализация тебе известно? И почему всем это подходит, а тебе нет?
← →
Anatoly Podgoretsky © (2005-08-16 10:29) [8]Death_R (16.08.05 10:14) [5]
Это называется Cascade Updates, так как dBase не поддерживает внешних ключей и такого типа обновлений, то ты должен делать такое поведение сам, ручками, делая обновление два (много раз) подряд во всех связаных таблицах. Удобно для этого использовать SQL запросы.
← →
evvcom © (2005-08-16 10:50) [9]
> Это называется Cascade Updates
Телепат!? Я этого не углядел :(
2 Death_R: Надо апдейтить foreign key (FK) при апдейте primary key (PK)? А зачем менять PK?
← →
Desdechado © (2005-08-16 10:58) [10]Шаблон - это такая штука, на основании которой происходит ПЕРВОНАЧАЛЬНОЕ заполнение или создание чего-то. Потом это "что-то" живет уже своей жизнью, и изменение шаблона никоим образом не должно на "что-то" влиять.
Посему, если не хочешь менять структуру, меняй логику.
Хотя, по сути, они взаимосвязаны. Такой себе Cascade Updates в мозгах :)
← →
Death_R (2005-08-16 18:21) [11]
> Sergey13 © (16.08.05 10:18) [6]
В onChange пробывал следующий код:
if dm.t1.locate("IDEN", "P_IDEN", []) then
dm.t1.FiledByName("имя поля").value := TField(Sender).value;
после чего поле в таблице блокировалось.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.036 c