C # - программно идентифицировать тип отношений между 2 таблицами - PullRequest
4 голосов
/ 24 августа 2011

В настоящее время используется GetOleDbSchemaTable , чтобы сообщить мне много информации о моих таблицах базы данных.В то время как аргумент OleDbSchemaGuid.Foreign_Keys сообщает мне о данных внешнего ключа в таблице, я не могу вывести, если что-то из этих данных 1: N, N: 1, N: M и т. Д.Есть ли способ, которым я могу получить этот тип информации?

1 Ответ

1 голос
/ 25 августа 2011

Как прокомментировал Джек, вы можете узнать, возвращает ли схема уникальное свойство столбца.

если внешний ключ из таблицы A уникален в таблице B, то это отношение 1 к 1.

если у него есть уникальное ограничение в таблице B с первичным ключом в таблице B, то его 1 для многих.

если между таблицами A и B существует таблица C, в которой оба основных числа A \ B являются внешними ключами в C, то это отношение многих ко многим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...