在C#.NET读SQLite表信息信息、NET、SQLite

2023-09-04 22:54:12 作者:坑蒙拐骗专业户

我想读在C#.NET Windows应用程序的表和列信息。我知道,有是SQL Server SMO基地访问。类似地是有SQLite的任何API?

I would like to read the table and column information in C#.NET Windows application. I know that there is SMO base access for SQL Server. On similar ground is there any API for SQLite?

谢谢, Omky

推荐答案

您可以使用的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的有:

GetSchema returns a DataTable that contains information about the tables, columns, or whatever you specify. Valid GetSchema arguments for SQLite include:

MetaDataCollections DataSourceInformation 数据类型 ReservedWords 目录 列 索引 IndexColumns 在表 查看 排列viewColumns ForeignKeys 触发器 MetaDataCollections DataSourceInformation DataTypes ReservedWords Catalogs Columns Indexes IndexColumns Tables Views ViewColumns ForeignKeys Triggers