Общая информационная схема для нескольких баз данных - PullRequest
1 голос
/ 24 июля 2010

Мне нужно получить информацию таблицы базы данных, такую ​​как подробности столбцов, ограничения pk / uk / check / fk и т. Д. Для популярных баз данных (Oracle, MySql, MSSql, DB2 и т. Д.).Я знаю, что каждая база данных так или иначе обеспечивает получение информации о схеме.Знает ли кто-нибудь общий способ сбора информации о схеме из разных баз данных (некоторый вид API, который считывает разные информационные схемы базы данных и создает общую информационную схему).

Ответы [ 3 ]

1 голос
/ 24 июля 2010

Несколько основных баз данных (включая те, которые вы перечислили) реализуют схему INFORMATION_SCHEMA SQL, которая должна предоставлять необходимую вам информацию. Я не знаю, насколько внимательно каждый поставщик отслеживает этот аспект стандарта.

1 голос
/ 24 июля 2010

Кажется, что SQL-92 определяет информационную схему . Microsoft SQL Server, Sybase ASE, Oracle, кажется, имеют его.

0 голосов
/ 24 июля 2010

К сожалению, единого API нет. Этот аспект баз данных никогда не был стандартизирован, и каждый поставщик предоставляет различные средства для доступа к этим данным.

Вам придется реализовать это по-разному для каждой базы данных.

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