Şimdi Ara

sql... references, foreign key kullanımı hk.

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir (1 Mobil) - 1 Masaüstü1 Mobil
5 sn
3
Cevap
0
Favori
4.297
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba arkadaslar,
    sql ogrenmeye calisiyorum. Asagıdaki yaptıgım cok basit bir ornekte takıldım.
    USE dreg
    ALTER TABLE COMPANY
    ADD CONSTRAINT fk_constraint FOREIGN KEY (age)
    REFERENCES CLASS(age)
    GO
    USE dreg
    SELECT name,company_name, commet
    FROM IDENTITY1 JOIN COMPANY
    ON no=number
    JOIN CLASS
    ON COMPANY.age=CLASS.age
    GO

    Tablolar hakkında bilgide vereyim:
    IDENTITY1 tablosu no, name, surname alanlarına sahip.
    COMPANY tablosu number, age, company_name alanlarına sahip.
    CLASS tablosu age, comment alanlarına sahip.
    Bu tablolardan name, company_name, commet alanlarından olusan bir tabloyu sonucta aldım. Ki istenen tabloda buydu.

    Fakat yukardaki yazılan ornek calıstırdıgım zaman iki tane error uyarısı verdi.

    There are no primary or candidate keys in the referenced table 'CLASS' that match the referencing column list in the foreign key 'fk_constraint'.

    Could not create constraint. See previous errors.


    Ama ben neden eror oldugunu anlamadım?
    Ayrıca, FOREIGN KEY, REFERENCES yapısı hakkında bilgisi olan varsa, acıklar mısınız?

    tesekkur ederim.







  • eğer class tablosuna bir primary key atarsan foreign key hangi satıra bağlanacağını anlayabilecektir. problem bu muhtemelen.
  • tripanazomigam
    belki bu olabilir ama



    USE dreg
    ALTER TABLE COMPANY
    ADD CONSTRAINT fk_constraint FOREIGN
    KEY (age)
    CONSTRAINT Pk_CLASS PRIMARY KEY(age)
    REFERENCES CLASS(age)
    GO
    USE dreg
    SELECT name, company_name, comment
    FROM IDENTITY1 JOIN COMPANY
    ON no=number
    JOIN CLASS
    ON COMPANY.age=CLASS.age
    GO

    Yukarda belirttigim sekilde primary key atamaya calıstım .Bu seferde
    Incorrect syntax near the keyword 'CONSTRAINT'. Bu error u verdi.
    Nasil atanması gerekiyor primary key'in?

    tesekkurler,



    < Bu mesaj bu kişi tarafından değiştirildi discretion -- 7 Mart 2008; 0:13:22 >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.