Чтение информации таблицы SQLite в C # .NET - PullRequest
8 голосов
/ 23 января 2011

Я хотел бы прочитать информацию о таблицах и столбцах в приложении C # .NET для Windows. Я знаю, что есть базовый доступ SMO для SQL Server. На подобном основании есть ли API для SQLite?

1 Ответ

16 голосов
/ 23 января 2011

Вы можете использовать метод GetSchema:

DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.SQLite");
using (DbConnection connection = factory.CreateConnection())
{
    connection.ConnectionString = @"Data Source=D:\tmp\test.db";
    connection.Open();
    DataTable tables = connection.GetSchema("Tables");
    DataTable columns = connection.GetSchema("Columns");
    tables.Dump();
    columns.Dump();
}

GetSchema возвращает таблицу данных, которая содержит информацию о таблицах, столбцах или о чем угодно, что вы укажете. Допустимые аргументы GetSchema для SQLite:

  • MetaDataCollections
  • DataSourceInformation
  • Datatypes
  • ReservedWords
  • Каталоги
  • Колонны
  • Индексы
  • IndexColumns
  • Таблица
  • Просмотры
  • ViewColumns
  • ForeignKeys
  • Триггеры
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...