在C#.NET中读取SQLite表的信息。

27 浏览
0 Comments

在C#.NET中读取SQLite表的信息。

我想在C#.NET Windows应用程序中读取表格和列信息。我知道SQL Server有SMO基本访问。在类似的情况下,SQLite有没有API可用?

0
0 Comments

在C#.NET中读取SQLite表信息的原因是因为使用GetSchema方法时遇到了问题。解决方法是改用SQLiteCommand("PRAGMA table_info('tracks')", DB)来获取表结构信息。

GetSchema方法返回一个包含有关表、列或其他指定信息的DataTable。SQLite中有效的GetSchema参数包括:

- MetaDataCollections

- DataSourceInformation

- DataTypes

- ReservedWords

- Catalogs

- Columns

- Indexes

- IndexColumns

- Tables

- Views

- ViewColumns

- ForeignKeys

- Triggers

根据stackoverflow的一篇帖子,GetSchema在SQLite中不起作用。我遇到了同样的问题,现在我使用"SQLiteCommand("PRAGMA table_info('tracks')", DB)"来获取表结构信息。

根据评论中的回答,GetSchema方法在官方的System.Data.SQLite提供程序中可以正常工作。

如何找出DataTable tables = connection.GetSchema("Tables")中的列?

只需枚举tables.Columns即可。

我在最新的nuget包上尝试了这个方法,但收到了"Specified method is not supported."的错误信息。

0