Seid Ihr gegrüßt, Leute,
Ich wirke noch immer beim Aufbauen einer kleinen Firmendatenbank mit und bin auf ein weiteres Problem gestoßen - wie ich eine m:n Rekursivbeziehung unter MS SQL Server 2005 hinkriege. Hier - ein Beispiel:
Gegeben ist dieselbe Tabelle tbl_Projekt (Projekt_ID int/Primary Key/,Projektnummer,Projektkategorie, ...)
Es gibt 2 Arten von Projekten: Arbeitsprojekt und Akquisitionsprojekt
Alle Arbeitsprojekte sind aus einem oder mehren Akquise-Projekten hervorgegangen (sprich wurden beauftragt), alle Projekte werden in einer Tabelle geführt und haben bloß unterschiedliche Stati und Kategorien, dies ist notwendig, da Akquise-Projekte und "normale" Projekte gleiche Attributten besitzen.
Um diese Beziehung aufzubauen, müsste ich eine 2. Tabelle haben, wo Zuordnung von Projekten zu ihren "Akquise-Eltern" erfolgt: tbl_Projekt_zu_AKQ(Projekt_ID,AKQ_ID), wo beide Attributte auf Projekt_ID geschlossen sind.
Die Frage: Wie lässt es sich im SQL Server realisieren? Wenn ich folgende CONSTRAINTs einfüge - kriege ich eine Fehlermeldung, da die beiden FK auf dieselbe Spalte verweisen
:
(...) CONSTRAINT [tbl_P_AKQ_FK00] FOREIGN KEY([Projekt_ID])
REFERENCES [dbo].[tbl_Projekte] ([Projekt_ID])
ON UPDATE CASCADE,
CONSTRAINT [tbl_P_AKQ_FK01] FOREIGN KEY([Akquise_ID])
REFERENCES [dbo].[tbl_Projekte] ([Projekt_ID])
ON UPDATE CASCADE
Ich bin ja nicht vom Fach und schwitze an dem Projekt schon ziemlich lange
, möchte aber dies gern durchziehen
Vielen besten Dank!
Grüße aus Braunschweig
Ich wirke noch immer beim Aufbauen einer kleinen Firmendatenbank mit und bin auf ein weiteres Problem gestoßen - wie ich eine m:n Rekursivbeziehung unter MS SQL Server 2005 hinkriege. Hier - ein Beispiel:
Gegeben ist dieselbe Tabelle tbl_Projekt (Projekt_ID int/Primary Key/,Projektnummer,Projektkategorie, ...)
Es gibt 2 Arten von Projekten: Arbeitsprojekt und Akquisitionsprojekt
Alle Arbeitsprojekte sind aus einem oder mehren Akquise-Projekten hervorgegangen (sprich wurden beauftragt), alle Projekte werden in einer Tabelle geführt und haben bloß unterschiedliche Stati und Kategorien, dies ist notwendig, da Akquise-Projekte und "normale" Projekte gleiche Attributten besitzen.
Um diese Beziehung aufzubauen, müsste ich eine 2. Tabelle haben, wo Zuordnung von Projekten zu ihren "Akquise-Eltern" erfolgt: tbl_Projekt_zu_AKQ(Projekt_ID,AKQ_ID), wo beide Attributte auf Projekt_ID geschlossen sind.
Die Frage: Wie lässt es sich im SQL Server realisieren? Wenn ich folgende CONSTRAINTs einfüge - kriege ich eine Fehlermeldung, da die beiden FK auf dieselbe Spalte verweisen
(...) CONSTRAINT [tbl_P_AKQ_FK00] FOREIGN KEY([Projekt_ID])
REFERENCES [dbo].[tbl_Projekte] ([Projekt_ID])
ON UPDATE CASCADE,
CONSTRAINT [tbl_P_AKQ_FK01] FOREIGN KEY([Akquise_ID])
REFERENCES [dbo].[tbl_Projekte] ([Projekt_ID])
ON UPDATE CASCADE
Ich bin ja nicht vom Fach und schwitze an dem Projekt schon ziemlich lange
Vielen besten Dank!
Grüße aus Braunschweig