• 30-09-2015, 00:18:27
    #1
    Üyeliği durduruldu
    Merhaba Arkadaşlar,

    mysql trigger ile bir kaç işlem yaptırıyorum fakat bir yerde takıldım..

    Örnek:

    a tablosuna veri geliyor bu tabloyu trigger ile b tablosuna aktarıyorum insert işlemi sonunda a tablosundan ilgibi satırı sildirmek istediğimde işleme almıyor.

    yani önce
    insert işlemi yapılacak bu işlem sonunda
    delete
    işlemi yapılması lazım..

    CREATE TRIGGER test AFTER INSERT ON a tablosu
      FOR EACH ROW
      BEGIN
        INSERT INTO b tablosu (id, name) values (NEW.id, NEW.name);
      END;
    
    //////////////////
    
    CREATE TRIGGER test2 AFTER INSERT ON b tablosu
      FOR EACH ROW
      BEGIN
        DELETE FROM a tablosu WHERE a tablosu.id = NEW.id;
      END;
    önerisi olan arkadaşımız var mı?
  • 30-09-2015, 09:40:47
    #2
    bayraktar adlı üyeden alıntı: mesajı görüntüle
    Merhaba Arkadaşlar,

    mysql trigger ile bir kaç işlem yaptırıyorum fakat bir yerde takıldım..

    Örnek:

    a tablosuna veri geliyor bu tabloyu trigger ile b tablosuna aktarıyorum insert işlemi sonunda a tablosundan ilgibi satırı sildirmek istediğimde işleme almıyor.

    yani önce
    insert işlemi yapılacak bu işlem sonunda
    delete
    işlemi yapılması lazım..

    CREATE TRIGGER test AFTER INSERT ON a tablosu
      FOR EACH ROW
      BEGIN
        INSERT INTO b tablosu (id, name) values (NEW.id, NEW.name);
      END;
    
    //////////////////
    
    CREATE TRIGGER test2 AFTER INSERT ON b tablosu
      FOR EACH ROW
      BEGIN
        DELETE FROM a tablosu WHERE a tablosu.id = NEW.id;
      END;
    önerisi olan arkadaşımız var mı?
    DELIMITER $$
    
    CREATE
    	TRIGGER `blog_after_update` AFTER UPDATE 
    	ON `blog` 
    	FOR EACH ROW BEGIN
    	
    		IF NEW.deleted THEN
    			SET @changetype = 'DELETE';
    		ELSE
    			SET @changetype = 'EDIT';
    		END IF;
        
    		INSERT INTO audit (blog_id, changetype) VALUES (NEW.id, @changetype);
    		
        END$$
    
    DELIMITER ;
    şeklinde dener misiniz kendinize göre düzenleyip internette bu şekilde bir şeyler buldum ama