Я хочу получить структуру всех таблиц и odbc-Datasources в базе данных Access с C #. Поэтому я попробовал этот код:
string text="";
var tables = GetApp().CurrentData.AllTables;
for (int i = 0; i < tables.Count; i++)
{
var currentTable = tables.Item(i);
text = text + currentTable.FullName + Environment.NewLine;
}
MessageBox.Show(text);
Возвращает все доступные имена таблиц. Но как мне получить столбцы и типы таблиц?
Я пробовал это:
var props = currentTable.Properties;
for (int j = 0; j < props.Count; j++)
{
var prop = props.Item(j);
text = text + Environment.NewLine + prop.Name;
}
но это не сработало (Исключение было вызвано, когда я получил доступ к свойствам).
Я пытался использовать соединение oleDB + GetSchema, чтобы получить структуру таблицы. Но с помощью этого метода я получил только «родные» (или локальные) таблицы внутри access-db. Но есть также некоторые таблицы ODBC-Linked-Table, которые меня тоже интересуют.
Так как можно получить TableNames, ColumnNames и Columntypes в файле базы данных ms-access?