在Ms Access 2010/2013中获取自动编号列索引

本文关键字:编号 索引 获取 Access Ms 2010 2013 | 更新日期: 2023-09-27 18:07:32

(首先为我的英语道歉):

我想暂时将auto-number列更改为int64数据类型,以从另一个数据库导入记录。导入记录后,我想改回auto-number .

我的问题:我尝试使用table.Columns[i].AutoIncrement属性来检查此列是否为auto-number并获得其索引,以便我可以更改其数据类型,但此属性不适合我,它为所有列返回false。

我使用2010/2013 Access数据库。

所以我想知道如何获得auto-number列的索引?

在Ms Access 2010/2013中获取自动编号列索引

您可以使用这种方法

// Bogus query, we don't want any record, so add a always false condition
OleDbCommand cmd = new OleDbCommand("SELECT * FROM aTable where 1=2", con);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataTable test = new DataTable();
da.FillSchema(test, SchemaType.Source);
for(int x = 0; x < test.Columns.Count; x++)
{
    DataColumn dc = test.Columns[x];
    Console.WriteLine("ColName = " + dc.ColumnName + 
                      ", at index " + x +
                      " IsAutoIncrement:" + dc.AutoIncrement);
}