Związek między tabelami

0

Hej!
SQL Server Express
Mam dwie tabele:

  1. ExtDokument
    -ID(PK, int, not null)
    -Guid(uniqueidentifier, null)
  2. ExtDokumentWiersz
    -ID(PK, int, not null)
    -Guid_Dokument(uniqueidentifier, null)

Potrzebuję połączyć je kolumnami Guid i Guid_Dokument.
Ale SQL Server Managment Studio mi na to nie pozwala, bo jeden "koniec" relacji musi być Primary Key. Dostaję błąd "the columns in table do not match an existing primary key or unique constraint".
Da się to jakoś zrobić?

Zaznaczę, że taką strukturę bazy dostałem od kogoś, ja mam się z nią połączyć i z poziomu mojej aplikacji wrzucić coś do niej. Więc zmian w bazie nie mogę robić, robię sobie tylko testową, żebym widział na czym pracuję. Z bazami danych nie miałem zbyt wiele do czynienia wcześniej.

Pozdrawiam,
Fryderyk.

0

Potrzebuję połączyć je kolumnami Guid i Guid_Dokument.

napisz jak próbujesz wykonać to złączenie ?

0
grzegorz_so napisał(a):

Potrzebuję połączyć je kolumnami Guid i Guid_Dokument.

napisz jak próbujesz wykonać to złączenie ?

W załączniku zrzut ekranu.

0

Na odwrót ty ustawiasz, ze id z extdocument jest FK...

0
Panczo napisał(a):

Na odwrót ty ustawiasz, ze id z extdocument jest FK...

Ten sam błąd. Patrz załącznik.

0

typ kolumny UNIQUEIDENTIFIER nie implikuje unikalności wartości w tej kolumnie. Aby zapewnić unikalność wartości musisz mieć założony indeks unikalny na niej. W Twoim przypadku musisz mieć indeks unikalny na kolumnie Guid w tabeli ExtDokument

0

Masz kolumny id A próbujesz łączyć po Guid. Się nie da. Albo wywala Guide i łącz pod id albonwywal id i niech Guide będzie OK.

0
jacek.placek napisał(a):

Masz kolumny id A próbujesz łączyć po Guid. Się nie da. Albo wywala Guide i łącz pod id albonwywal id i niech Guide będzie OK.

No przecież napisałem w pierwszym poście, że takie dostałem wytyczne, że tak to jest połączone, dlatego pytam jak to zrobić.

0

przy powyższej strukturze nie założysz FK między tymi dwiema tabelami

0

Nie chce mi się specjalnie tego analizować, ale problem może leży w tym, że GUID_Dokument dopuszcza null. Skutkuje to tym, że wiersze są nieunikalne (może być wiele wierszy z tą samą wartością null). Co do zasad GUID jest unikalny jeżeli ma wartość

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0