Mysql Trigger插入行使用匹配数据的另一个表

问题描述 投票:0回答:1

我有3张桌子:

CREATE TABLE `UrunPaketDetay`(
    `UrunPaketDetay` int NOT NULL AUTO_INCREMENT, 
    `UrunPaketNo` int NULL, 
    `Tarih` date NULL, 
    `Barkod` varchar(14) NOT NULL, 
    `Urun` varchar(50) NULL, 
    `SunumSekli` varchar(50) NULL, 
    `IslemeSekli` varchar(50) NULL, 
    `PaketlemeSekli` varchar(50) NULL, 
    `Kalibre` varchar(50) NULL, 
    `Kilo` double NULL, 
    `GlazeOran` varchar(50) NULL, 
    `Uretici` varchar(190) NULL, 
    `PaletKod` varchar(50) NULL, 
    PRIMARY KEY (`UrunPaketDetay`)
)CHARACTER SET utf8;

CREATE TABLE `CkisEks`(
    `CikId` int NOT NULL AUTO_INCREMENT, 
    `Tarih` date NULL, 
    `Musteri` varchar(190) NULL, 
    `TeslimatYer` varchar(50) NULL, 
    `CikisSaati` time NULL, 
    `AracPlakasi` varchar(18) NULL, 
    `AracTel` varchar(16) NULL, 
    `KonteynirNo` varchar(50) NULL, 
    `PaletKod` varchar(12) NULL, 
    `Kilo` double NULL, 
    PRIMARY KEY (`CikId`)
)CHARACTER SET utf8;

CREATE TABLE `Ckis_Detay`(
    `CD_Id` int NOT NULL AUTO_INCREMENT, 
    `CikId` int NULL, 
    `Barkod` varchar(50) NULL, 
    `Urun` varchar(50) NULL, 
    `Kalibre` varchar(50) NULL, 
    `Kilo` double NULL, 
    `Uretici` varchar(50) NULL, 
    `Musteri` varchar(190) NULL, 
    `PaletKod` varchar(50) NULL, 
    `Tarih` date NULL, 
    PRIMARY KEY (`CD_Id`)
)CHARACTER SET utf8;

我填满了我的第一张桌子。在第二个表后,我调用PaletKod行。 PaletKod自动填充Kilo Row在第2桌上从第1桌。

但是当我将PaletKod填充到第二个表时,我需要如何从第一个表中选择Paletkod并填充我的第三个表值(Uretici,Urun,Kilo,Kalibre)?

我需要触发代码。你能帮我吗?

mysql triggers phpmyadmin
1个回答
0
投票

从我的理解来做到这一点,

 DELIMITER $$
  CREATE TRIGGER Insert_UrunPaketDetay 
  AFTER INSERT ON UrunPaketDetay
  FOR EACH ROW 
  INSERT INTO Ckis_Detay (Uretici,Urun,Kilo,Kalibre)
  VALUES 
  (UrunPaketDetay.Uretici,UrunPaketDetay.Urun
   ,UrunPaketDetay.Kilo,UrunPaketDetay.Kalibre);
 END$$  
 DELIMITER ;

试试这个代码

© www.soinside.com 2019 - 2024. All rights reserved.