【问题标题】:How to get index names through SQL or OLEDB from .NET?如何从 .NET 通过 SQL 或 OLEDB 获取索引名称?
【发布时间】:2015-01-27 16:29:27
【问题描述】:

如何使用 OLEDB 或 SQL 获取 Access 表的索引名称?

(这两天在网上查了很多,没有找到与这个问题相关的东西。)

【问题讨论】:

标签: c# sql ms-access oledb database-metadata


【解决方案1】:

OleDbConnection 有一个名为GetSchema 的方法,它接受一个字符串来选择要检索的元数据集合。

字符串参数的一些可能值是表、列、索引

using(OleDbConnection cnn = new OleDbConnection("...."))
{
    cnn.Open();
    DataTable schemaIndexes = cnn.GetSchema("Indexes");
    foreach(DataRow row in schemaIndexes.Rows)
    {
       Console.WriteLine("Table={0}, Index={1} on field={2}",
           row.Field<string>("TABLE_NAME"),
           row.Field<string>("INDEX_NAME"),
           row.Field<string>("COLUMN_NAME"));
    }
}

【讨论】:

    猜你喜欢
    • 2017-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-08
    • 1970-01-01
    • 2019-11-27
    相关资源
    最近更新 更多