MySql de aşağıdaki kod ile bir trigger yazmaya çalışıyorum. Bu kod syntax hatası veriyor fakat SHOW TRIGGERS dediğimde trigger eklenmiş görünüyor. Syntax sorunu nedir? Hata vermesine rağmen neden ekliyor?

DELIMITER |
CREATE TRIGGER `addUserRole` AFTER INSERT ON patients 
FOR EACH ROW BEGIN
INSERT INTO userroles(role,useridentitynumber) VALUES(NEW.role,NEW.identitynumber);  
END;|
DELIMITER ;

soruldu: 13 Haz '15, 06:59

ilkay's gravatar image

ilkay
726333649
cevap kabul oranı: 13%


-1
CREATE TABLE patients (pat_role INT,pat_identitynumber INT);
CREATE TABLE userroles (role INT,identitynumber INT);

DELIMITER $$

CREATE TRIGGER addUserRole AFTER INSERT ON patients
    FOR EACH ROW
        BEGIN
            INSERT INTO userroles(role,identitynumber) VALUES (NEW.pat_role,NEW.pat_identitynumber);
        END; $$
DELIMITER ;
  1. TRIGGER içerisinde INSERT edilecek olan tablonun field isimleri ile verilen değerler farklı isimde olmalıdır veya bir başka tablonun field isimleri olmak zorundadır. Aksi takdirde syntax hatası vericektir.
    2." | " özel bir karakter olduğu için bu hata ile karşılaşılabilir. (Karşılaşılmayadabilir , test edilmedi).
permanent link

cevaplandı: 13 Haz '15, 19:58

alicankustemur's gravatar image

alicankustemur
71348
cevap kabul oranı: 20%

değiştirildi: 13 Haz '15, 19:59

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×144
×2

Soruldu: 13 Haz '15, 06:59

Görüntüleme: 378 kez

Son güncelleme: 13 Haz '15, 19:59

powered by BitNami OSQA