none
Transaction komutu ile ilgili RRS feed

  • Soru

  • Sorumu daha öncede sormuştum, nasıl olması gerektiği hakkında biraz edindim ama bir yerde takıldım.

    Aşağıda belirttiğim durum cyle oluşturduğu için sql server 2008 buna izin vermiyor, bu yüzden transaction komutu kullanılması gerekiyormuş fakat nasıl yazacağımı tam çözemedim yardımcı olursanız sevinirim.

    begin transaction   // bunların arasına belirttiğim kısıtları nasıl yazacağım?

    ..

    ...

    end transaction   

     

    yani 1 numaralı user'in arkdaşları 2,3,8,9 ve 7 numaralı userlar (2 ve 3 numaralı arkadaşları  okul arkadaşları, 8 numaralı olan ev arkadaşı, 9 ise hem iş hemde ev arkadaşı)
    2 numaralı user'in arkadaşı 1 numaralı user(ev arkadaşı)
    Benim problemim şu;
    User tablosundan herhangi bir user silindiğinde friend tablosundan o user_id ilişkili tüm kayıtlar silinmeli mesela 1 numaralı user_id ye sahip user silindiğinde 1,2,3,4 ve 6. kayıtlar silinmeli(delete rule cascade seçeneği aktif durumda)
    ve silinen user herhangibirinin arkadaşı ise friend_user_id ile ilişkili tüm kayıtların silinmesi gerekli yani 1 numaralı user silindiğinde
    friend tablosundan 5. kayıt da silinmeli  (delete rule cascade seçeneği aktif durumda)

    'User' table saved successfully
    'Friend' table
    - Unable to create relationship 'FK_Friend_User2'.  
    Introducing FOREIGN KEY constraint 'FK_Friend_User2' on table 'Friend' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
    Could not create constraint. See previous errors.

     



    10 Kasım 2011 Perşembe 20:49

Yanıtlar

Tüm Yanıtlar