- 13, May 2024
- #1
Привет.
У меня получились следующие таблицы:
СОЗДАТЬ ТАБЛИЦУ А (
id_a INT AUTO_INCREMENT ПЕРВИЧНЫЙ КЛЮЧ,
имя_a VARCHAR(50),
фамилия_a VARCHAR(50));
СОЗДАТЬ ТАБЛИЦУ Б(
id_b INT AUTO_INCREMENT ПЕРВИЧНЫЙ КЛЮЧ,
имя_b VARCHAR(50),
фамилия_b ВАРЧАР(50),
уникальный bbb(имя_b,фамилия_b));
СОЗДАТЬ ТАБЛИЦУ C(
id_c INT AUTO_INCREMENT ПЕРВИЧНЫЙ КЛЮЧ,
кабина ВАРЧАР(40) УНИКАЛЬНАЯ);
СОЗДАТЬ ТАБЛИЦУ D(
id_as INT,
id_bs ИНТ,
id_cs ИНТ,
дт ДАТАВРЕМЯ,
ВНЕШНИЙ КЛЮЧ(id_as) ССЫЛКИ A(id_a),
ВНЕШНИЙ КЛЮЧ(id_bs) ССЫЛКИ B(id_b),
ВНЕШНИЙ КЛЮЧ(id_cs) ССЫЛКИ C(id_c));
СОЗДАТЬ ТАБЛИЦУ E(
дата ДАТА,
или ВРЕМЯ,
имя_b VARCHAR(50),
фамилия_b ВАРЧАР(50),
имя_a VARCHAR(50),
фамилия_а ВАРЧАР(50),
такси ВАРЧАР(40));
Таблица A и таблица E заполняются процессом загрузки файла.
Я использую триггер для таблицы E для заполнения таблиц B, C и D. Триггер имеет обработчик продолжения для повторяющихся записей.
До сих пор мне удавалось заполнить таблицы B и C, но у меня РЕАЛЬНЫЕ проблемы с тем, чтобы сделать то же самое с таблицей D. Я не могу найти способ поместить первичные ключи в эту таблицу.
Я попытался поместить их в переменную, используя флаг дублирования обработчика, но это не сработало.
Есть идеи ? Любая помощь будет высоко оценен.
Спасибо.
У меня получились следующие таблицы:
СОЗДАТЬ ТАБЛИЦУ А (
id_a INT AUTO_INCREMENT ПЕРВИЧНЫЙ КЛЮЧ,
имя_a VARCHAR(50),
фамилия_a VARCHAR(50));
СОЗДАТЬ ТАБЛИЦУ Б(
id_b INT AUTO_INCREMENT ПЕРВИЧНЫЙ КЛЮЧ,
имя_b VARCHAR(50),
фамилия_b ВАРЧАР(50),
уникальный bbb(имя_b,фамилия_b));
СОЗДАТЬ ТАБЛИЦУ C(
id_c INT AUTO_INCREMENT ПЕРВИЧНЫЙ КЛЮЧ,
кабина ВАРЧАР(40) УНИКАЛЬНАЯ);
СОЗДАТЬ ТАБЛИЦУ D(
id_as INT,
id_bs ИНТ,
id_cs ИНТ,
дт ДАТАВРЕМЯ,
ВНЕШНИЙ КЛЮЧ(id_as) ССЫЛКИ A(id_a),
ВНЕШНИЙ КЛЮЧ(id_bs) ССЫЛКИ B(id_b),
ВНЕШНИЙ КЛЮЧ(id_cs) ССЫЛКИ C(id_c));
СОЗДАТЬ ТАБЛИЦУ E(
дата ДАТА,
или ВРЕМЯ,
имя_b VARCHAR(50),
фамилия_b ВАРЧАР(50),
имя_a VARCHAR(50),
фамилия_а ВАРЧАР(50),
такси ВАРЧАР(40));
Таблица A и таблица E заполняются процессом загрузки файла.
Я использую триггер для таблицы E для заполнения таблиц B, C и D. Триггер имеет обработчик продолжения для повторяющихся записей.
До сих пор мне удавалось заполнить таблицы B и C, но у меня РЕАЛЬНЫЕ проблемы с тем, чтобы сделать то же самое с таблицей D. Я не могу найти способ поместить первичные ключи в эту таблицу.
Я попытался поместить их в переменную, используя флаг дублирования обработчика, но это не сработало.
Есть идеи ? Любая помощь будет высоко оценен.
Спасибо.