我有 2 个表命名为:train_information 和轴。
Train_information
有以下特点:
train_id (PK)
train_name
train_length
number_of_axles
axle
有以下特点:
axle_id (PK)
train_id(FK)
axle
当我在train_information上插入一些东西时,例如假设将数字 16 放在number_of_axles中。我希望工作台轴自动获取相同的信息。
如何使用触发器执行此操作?
编辑:
它现在适用于以下代码:
CREATE TRIGGER TriggerName AFTER INSERT ON train_information
FOR EACH
ROW
BEGIN
INSERT INTO axle( train_id, axle )
VALUES (
NEW.train_id, NEW.number_of_axles
);
END
但是现在,它输入例如桌轴中的数字 16但我希望它像这样:
axle_id = 1
train_id = 1
axle = 1
axle_id = 2
train_id = 1
axle = 2
axle_id = 3
train_id = 1
axle = 3
这可能吗?
您可以在
表上创建AFTER TRIGGER
Train_information
如下所示:
.SQL有关 SQL 中的触发器后的更多信息
CREATE TRIGGER TriggerName
ON Train_information
FOR INSERT
AS
BEGIN
SET NOCOUNT ON
INSERT INTO axle
(train_id, axle)
SELECT
train_id, 'axle_name'
FROM inserted
END
MySQL更多关于 MySQL 中的触发器后
DELIMITER $$
CREATE TRIGGER TriggerName
AFTER INSERT ON Train_information FOR EACH ROW
BEGIN
INSERT INTO axle (train_id, axle)
VALUES (NEW.train_id, NEW.axle_name)
END;
$$
DELIMITER ;