Hallo,
für ein bald anlaufendes Projekt habe ich eben versucht, im Microsoft SQL Server Management Studio über Datenbankdiagramme --> Neues Datenbankdiagramm --> [Auswahl der entsprechenden Tabelle] --> Verknüpfte Tabellen hinzufügen, die Tabellenrelationen grafisch darzustellen.
Ich war erstaunt, dass „Verknüpfte Tabellen hinzufügen“ ausgegraut war.
Anschließend habe ich versucht, über folgende Abfrage alle Foreign Key Relationen in der DB abzufragen:
SELECT
FK_Table = FK.TABLE_NAME,
FK_Column = CU.COLUMN_NAME,
PK_Table = PK.TABLE_NAME,
PK_Column = PT.COLUMN_NAME,
Constraint_Name = C.CONSTRAINT_NAME
FROM
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS C
INNER JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS FK
ON C.CONSTRAINT_NAME = FK.CONSTRAINT_NAME
INNER JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS PK
ON C.UNIQUE_CONSTRAINT_NAME = PK.CONSTRAINT_NAME
INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE CU
ON C.CONSTRAINT_NAME = CU.CONSTRAINT_NAME
INNER JOIN (
SELECT
i1.TABLE_NAME,
i2.COLUMN_NAME
FROM
INFORMATION_SCHEMA.TABLE_CONSTRAINTS i1
INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE i2
ON i1.CONSTRAINT_NAME = i2.CONSTRAINT_NAME
WHERE
i1.CONSTRAINT_TYPE = 'PRIMARY KEY'
) PT
ON PT.TABLE_NAME = PK.TABLE_NAME
Hier existieren im Wesentlichen nur Relationen für die Termine und Aufgaben.
Verstehe ich das nun richtig, dass die Relationen, die ich in Combit CRM anlege, nicht durch Combit wiederum auf Datenbankebene angelegt werden, sondern durch Combit verwaltet werden?
Vielen Dank im Voraus.