Идентификатор триггера из таблицы A в таблицу B

0

У меня есть две таблицы:

Отчет Изображение 174551

проверки

Изображение 174551

Идентификатор столбца в таблице "Отчет" имеет ИИ (автоинкремент включен и установлен в Первичный ключ)

Идентификатор столбца в таблице "Проверки" имеет ИИ (автоматическое увеличение и индексирование)

Вот мои внешние ограничения ключей, созданные под "проверками" Таблица:

Внешний ключ Изображение 174551

Что мне нужно сделать:

  • Всякий раз, когда я запускаю свой запрос Powershell, чтобы вставить новую строку в таблицу "Отчет", мне нужен тот же ID, чтобы писать в столбце ID таблицы "Проверки".

Запрос Powershell:

"INSERT INTO Checks (WiFi, принтеры, блокнот) VALUES (" $ WiFi "," $ Printers "," $ NotepadPlus ")

  • Должен ли я создать триггер в phpmyadmin в этом случае? и если бы кто-нибудь мог помочь с этим?

  • Нужно ли указывать идентификатор в моей команде Powershell выше? если да, как это можно сделать?

Заранее спасибо,

Теги:
powershell
phpmyadmin

2 ответа

0

Да, вы можете указать ID в команде PowerShell.

Я предполагаю, что вы используете команду Powershell для вставки в Reports. Чтобы захватить новый идентификатор, вы можете использовать $command.LastInsertedId и его можно использовать при вставке в таблицу checks.

Надеюсь, поможет.

0

SQL для создания TRIGGER для вставки идентификатора в таблицу проверок:

CREATE DEFINER = CURRENT_USER TRIGGER 'dbname'.'trigger_name' AFTER INSERT ON 'Report' FOR EACH ROW
BEGIN
insert into Checks (id) values (NEW.id)
END

Но TRIGGER не может вставлять значения "$ WiFi", "$ Printers", "$ NotepadPlus". Вам необходимо установить эти значения, обновив строку, связанную с новым вставленным ID в вашем PHP-коде.

  • 0
    Я создал триггер: CREATE TRIGGER trigger_report ПОСЛЕ ВСТАВКИ НА report для каждой строки вставки в Проверки (ID) значения (NEW.id) и добавили это мой Powershell запрос: $ ChecksID = $ query1.LastInsertedId

Ещё вопросы

Сообщество Overcoder
Наверх
Меню